Skip to main content

Full text of "Amazing Computer Magazine (July 1990)"

See other formats


AMIGA NEWS: CDTV SEE PAGE 4 



1/ 



I 



M CQMPUTIMC 

Your OHgiiietf^MlGA^ Mf>nthlv JKesattrcn , 



SPEED TRIALS: 



IGAA2000ACCELEnE(TOR 

EOF A COMPARATIVE ANALYSI 



;T 



^ 



\A>Uinio > 



PLUS! 

FIXING A LIGHTNING BUG *« 
ON COMMODORE MONITORS 

ST0MP0iNIERSINMl$i6 




.lulljj M 



7Ui,70 747 


9 


07 



CONT 



ENTS 




INSIDE 



Motorola 68030 microprocessor. 
See article entitled Apples, 
oranges arrd MIPS on 68030 
accelerators. 



Commodore announces CDTV 47 

New machine makes for an inexpensive muitimedia 
workstation. 

AmIEXPO '90 Basel, Switzerland 3 1 

by Peter Sacks 

Higlilights include the A3000 and a speech from AmiShows 

President Alexander Gloss. 

Apples, oranges, and MIPS 9 

by Ernest P. Viveiros, Jn 

68030-based accelerators for the Amiga 2000, 



REVIEWS 



Pixound 18 

by R. Shamms Mortier 

Now you con "hear" what your eyes see. 

Hyperchord 18 

by Howard Bossen 

Stretch the limits of your musical ability. 

Batman: The Movie 55 

by Miguel Mulef 

As Batman, you must save Gotham City from that 

nasty villian, the Joker. 



The Jetsons 55 

by Miguel Mulef 

Spacely Sprockets sends you, 

George Jetson, on a special 

assignment to the planet Robotopia. 

Adventures Through Time: 
The Scavenger Hunt 55 

by Miguel Mulet 

Travel as Buck Walker on a 

scavenger hunt through time. 



COLUMNS 



New Products and 
Other Neat Stuff 14 

More Amiga products to look out for. 










muGA 



Vo!. 5 
No. 7 
July, 



1990 



Snapshot 23 

by R. Bradley Andrews 
Broderbund's Where in Europe is 
Carmen Sandiego, and more. 

Bug Bytes 43 

by John Sfeiner 

Problems with Perfect Sound 3.0, and 

what's tiappening with WB 2,0? 

PD Serendipity 45 

by Aimee B. Abren 

Create a personalized icon with IE, on 

icon editor, plus more. 

Roomers 61 

by The Bandito 

What's up with Commodore lately? 

Tine Command Line 75 

by Rich Falconburg 
Experimenting with serial port 
communication. 

C Notes From The C Group 76 

by Stephen Kemp 
Doubly linked lists revisited. 



PROGRAMMING 



Exceptional Conduct 37 

by Mark Cashman 

Quick response to user requests, 
achieved through efficient program 
logic. 

Poor Man's Spreadsheet 41 

by Gerry L. Penrose 

A simple spreadsheet program that 

demonstrates manipulating arrays. 

Tree Traversal and Tree Search 58 

by Forest W. Arnold 

Two methods for traversing trees. 

Crunchy Frog II 65 

by Jim Flore 

Adding windows and odds 'n ends, 



X 




Getting to the Point 50 



'Programmer--, by Robert DAsto 
_°" . / Custom Intuition pointers 
^°^^^ in AmigaBASIC. 



HARDWARE 



Synchronicity 27 

by John lovlne 
Right & left brain 
lateralization, 

Snap.Crackle, & POP! 39 




\ 



by Richard Landry 
Fixing a monitor bug on 
Commodore monitors. 



DEPARTMENTS 



Editorial 4 

Feedbacic 6 

List of Advertisers 80 

Public 

Domain Software 93 




Cover by 

Ernest P. Viveiros, Sr. 






AMAZING DEALERS 

The following Amazing Dealers, cany Amazing Computing'**, your resource for mformation 

on the Amiga'''", and AC's Guide To Tfie Commodore Amiga, the total Amiga product guide. 1-508-678-4200 

If you are not an Amazing Dealer, but would like to tiecome one, call. 



Aluti 




CodcnACoxn 


DKV 


IbdenBi^MuUKftrrl 


UbM 


liutui 




TMdCanWKS 


MtauySUin 


C^RwIfn^hc. 


TKsn 


BotBecvmes 


AnA»^ 


t-ilWJ3.tt, 


WMdbay 


Smn CtrwkwnuiM! 


U|l«n» 


AnnCampulfSwwcH 


Sphn^itt 


^iy*DalpB 




fifrifCMpivn 


Eimti 




JkMK 


ki:U^C«tO(»l«n 


DrtT 


SdnrMSoun 


U^T-e, 




KnaCtr 




Fiv» 


hk.«A0tC««*r9n'* 


acbvu* 


iJalanA 




UcDiunbuin 


Umic 


ThtbiciiSur 


Sdri 


Q>kWarth>h 


KvwOr 




GnrtFcria 


M|4>lriHiBtUt 




UOMMtUtTtUtklttt. 


>M|pMi 


liUr<iirfijrnt*>A 


Drtrr 


Ukb 




DUiByiaC<w»jHrCs. 


SlU^ 


Si^ipnHMi 


Figch 




Sv^Cv 




UM<yi 


UMi^Bnk. 


C«t¥ 


HutaOrtCcTfUKB 


WKbfut 


SoAwmCIv 




T>4Con;utorSDn 


Urtf 


PonSodiinirtowi 


Sink 


PamWura 






teMK 


S>Trt9f1&ft.« 


s«u 


SyMnPladaUui 


Slum 


Qu 




9lm-iBnHdMT%m 


TfmZvr}(fJlm<rmg» 




OwByu 


OukHM 


Uukd 




$r*trmr\» 


DvMutJPut 


QSStfHw* 




»wC«n,M«n 


Yitem. 


Jt»ZvT<qJi'tU 


BnnViun 


£ah«C(r 


Owv 


BuMIJMta. 


AxhA 


tutnta 




QiKtimi 


Cf^tm 


Til* A hi* 


KirvwKk 




MbM 


SQhwfnrigttan 


EnHtntanl 


CifWdDHictUd 


SW$p^ 


UrCB<«lrE. 


PWbmcrfi 


CnnwaFnSQNnn 


twtnm 


jZ^lui 


v*n 


aKsua 




TRanCampum 


UunWRftuD 


&MfV*nd1ud:^ 


T»-J^ 


Co<J^EC««T^Sf*>:n 


ChHftl 


CkHnpteMnrk 


UMril 


•n^Z«ty^^^ 


VVBDUW 


Coomodo'iCcnnKlvn 


Btwniod 


nanctBlCakmbii 








ttaBb 




^X^a^ 


Byn 


TcfmSbiAI 


Bibna 


CtierpMiCcKatu. 


ai4n«l 


Piqgrtni 


Htslw^ 


kkraCwTLitrCcnw 


BtkT^ 


CoirpiHiHuM 


SpBi* 


S^ 


ThmQckM 


EhH* 




^S««i 








Cotvhrt 


HUlDiKMlClUA^UIB^ 


L^VigM 




Zf^nu 


TiwBmAi 


Tkw* 


TMltrtino* 


LOtfbA 


btamx 






BtttTH 


TmmHkmB 


LBVeje 




iiitwaH 


rhfctktasunstndaMbi 


FtdH^WlT 


tasaa. 




Nna/liHnsEutl 


Kant 


SotnnnAAnv 


fluodi 


lfr#H*TtM>^ 




ljo^B(»iiiMni3iV 


TolUo 






BWnriMl 


Tucnn 


hala. 




Sc«WMC*r 


ADd^Oi 




Hlhw*' 


li!CllCvTplH3M« 




2IHiC«ijryeiHta 


kh^tn 


Be^Bimnljd 


TiAnn 


fmConvZvr^fJIa'ZK^r 


DndD 


Uartti-ttnmt 




a9CilC«nMik«C«9U«1 


Dw 


liUalCw^ii*!! 


CvkrA 


CenpcWScAHnCMii 


U'-MAM' 


fiutiQc 


Tmi(* 


M-^ 


dM-inSer 


CorrputoVhAl 


UddwMn 


GMsMCarpuu 


Khti 


UobCHv-CAfltM 


bbnka 




OtUwh 


bwiQiUStfMn 


rrowu 


ElHhsap 


UUTt 


CfAVtWZM 


Ho«iUHm 


SfMnEri 


Natu 




WMinfl 


IWhi 


ConpuwUnj'.W. 


Ttnv* 


BNtaup 


Ofae^ 


&k 




ttaJBOD 




UowtiCvnikUrCimhc. 


T«W4 


MmtM) 


fben 


U,r^KtnSaotM.n. 


Bv»Vmj. 


BwnmH 


KPUaOMdi 


HC3C0r«uvC«iMr 


LiMtM) 


A4i0i4 


WMnd 


UCMMU^pt 


FttUa 


TiHFtofnaMv 


Jtmrit 




tttMTU 


cqr)tafHiEr>d 


VnBwili 


LCA^dHlCcMVturClr 
UhrarrUmnr 


HmUI 


Ato*t!«-I 


AortcCtr 

1>W 


NmStip 


Hm 


nNTBDhMbA 


Whm 




hvtB^-h 


CmwmanPttt 


BrH&iforur 


Lkvw 


SESatwwAntS^BHni 


M«r«H9 


CMAiwEtu 


VAIUlt 


OnT^ComiUlM 


Tidoiin 




RmLh 


libiJdAAMji 


VUMTglf* 


CW^Mirto 


LUVM 




k^Of 


Cor^*ElW 


ivm 






Furi^ComiwhrCtrra 


SauCiOxnt 


Pi(«AMi 


IEa 


CnigrUnrtuiQKnrMa 


C««IF 


AwcvUiffiaoouLx 


EngiN»d 


CwMit^Mf. 


ib^ 


SAfi»^ 


Biknn 


G«I]»a>»^b>i 


MhUPM 


PCPMVtttJU.TM 


FirfiK 






AuAtPlwcni 


A^»ii 


ConpUHlimlK 


hnbdaiFVM 


&«p» 




HjteiNm 


NwYhI 


P^xrCaopUJiglnt 


Tutta 


(MpAeTRwUriMann 




e-OUfrLBoDU 


SnAiU 


CKViaiftHn 


».UiiKbl* 




dwM 


UnraCulraann 


ChMsr 


SdBiCcEfiM'Cvur 


£ibi 


CdA 




|A«a>t,&«*, 


SrO^p 


CDfiw%«nk« 


kUom 


Tl«BlBu«l 


HIMHwfcji. 


P.9»Sbr. 


Pm»n 




^uhCrRswi 


*fc«ti 




BaiSvw 


f^«rt« 


C4«pi«4*VteC'MM> 


F^^Bka 


Tpufflkt 


P«AU 


S«^9*» 


RDZkHT 


SdTitHinJUn 


Cn^TM 


Cota.BDak>>np)i 


CtigKV 


BHitPMMCttivPsd, 


JMtiH 


C>)'{»lM4Bt 


SVBA 


Y*Mi, 


Mq 


ThiPnpMiaHi 


EMflTiwn 


sdr.«i c:A^nt» 


lh;4rt Ki 


Cota.BoaiiP»^ 


Cdl^ 


bMn0 


U«)*«» 


C««fMI4PU 


S041» 


IfctelS 




ThiPngEMSm 


Wvm 


SMflPwlftrt* 


thlVtellHH^ 


SdhmSiOwwi 


&lnwn. 




SMDiQfr 


&.MEwpT«f 


kfan 


BootCrurOTLCWrt 


LbM< 


IHmlKlSiAMhc 


FUrwM 


LJ^C^ 


ruiOhiM 


iUi*ir«*»^B 




feWWBl 




£4aE*i 


r«r,. 


BirtMBooiiSh* 


Nh 


VhvC».,uwCM< 


OdvKnk 


^^ 






P*aCH« 


town 


SwFwau 


HMlBebtElDn 


bfnk 


CorMPvkConpMa 


OBRBi 


lUAnettiwi 


Phhu 


Ln»Pfd«tM.B«t, 


jlhiw 


andvCanpuvC«rt« 


Dti^ 


k^bMb*^ 


»f«*4 


OwM 


Umi 


Ccnpi£al 


KlIBiWH 


MHiagi«UU 


jHi^cir 


)^<:^„ium^ 


DlHAinHUr 


U*«l 


VWCMW 


OL-lKtiStKlOBn 


f^HlH 


OJ Cms CiMiVUtf Em1wi(p 


Pl.1M.iC.} 


CM|>^Enp>^« 


UfHg 






UcBLrtCccqFUKSui 


Tiiu 


tUdti 




CMjfCMpiMr 


fkOiM 


Jmi )MM,hV^ 


IhA 


CfDWne<i^ 


Um 




tansDrt) 


SmdhtandUMn 


a.uw»C4 


uwU'vStevM.Uii 




CmKiiric 




lbWF«9H 


Ifan 


[>«4>A«S 


Ljnrg 




MbUMRIu* 


VdBftCompht 


Lmm 


lfc.<fciT»Hl 




I^MuaCupHV 


BliltVM 


hMiTiHiSnukiSKv 


l^kllltM 


J^aUCjuTipii^ 


tiwteh 


hptOvFtairtnf 




Obb. 




eSS£i^ 


UnXn 




LBAt^pm 


IknCiKVLXvCtfW 


l*P 


rO&««».t 


Fh 


ftwll^nw 


SvaFi 


Artareda 


LjGrvdi 


PaC«rMnbd«»K. 


CHVt^Oi 




SsiUua 


rtaA«^3«%f 


ObMHV 


Ua*Frfr«(ir&«a.4 


Sn0«n 


t^MjsA 




ai3daanC«9(w 


g»M» 


F^^^SSIT^ 






UHihi 


FtMAgiBKssm 


SLPMnbifs 


Utf.^rwA9V^ 


lUiimiad 


h»0ru» 


HnY«* 


CUvwbqoAt 


□KtacM 


XlM.AJinCa^Ld. 


Si.Je>Mt 


CRudBaoia 


UiArg*. 


PCCOWnn 


C«[CiM 


UdvnS3i!r.« 


Um 


AouypUd 




Sidn 


^a^am. 




Cnudlocta 


LAArgriM 


PcTvaSbn 


OnKV 


UcmWbU 


li>«u 


AMUihk.)k^V<% 


W^Vr^nFA CoBvitoLJ.l£.H£. 


Sixn^*u 


MncFtoH 


l>tfta 


CannMto<iL«i 


Uamn 


Piogruoan 


PiwblPKk 


UCTiWHU 


IKxe 




E^NiA^crt 


ll>n3tK*ihc 


G^» 


CBhK.BHl!hDfh 


Ymtott 


CmneMO) 


NnrdCij 


PmwiNHHiioab 


FiLajdNtUi 


UcnlttvU 


ib(*«b 




kirftitfinaAn f*Mt&nnta?apLf 


LWin! 




^^Bto 


Conpwtoc 


PitoMt 


Pubic OgrainG3U(n 


St.wu 


UovWHU 


SooMU 


PttADM*^ 




Eugm 


a«MM 


CBncMUmqrBocta 


D^sr 


SuTY'iNSinBi.lnc. 


Owi^Pst 


kknViMI 


3ou^}M 


BmUHrNm 


SMPOgiSp'TVl PwBftTi* 


PoAnd 


QttB 




CoBiKfrLjlnrr 


Stmt 


LknWrtJ 


!Mr,NH^ 


BY>Stap 


UbttcIi 


FtoCijMa** 


9v%ni 


AlConwMn 


QkuHv 


Ca<TulirU(ncr 


SnaOui 


SkntwtSelMn 


FLLuirati 


UannUCanvarCMv 


0««>tom 


CwnpuMCNW 


WtteRuM 


SdiAlWitfr^pi^hn 


F^«nd 


AAan&ammLa 


Imm 


CanpiArNiolL he 


SvtBwTwIra 


Gboi 




UdardCcnfxji«aiV 


Udbnd 


C»TV«U.RVd« 


UmPOi 


SeftC«IS«««tri.lK. 


Pbrbnl 


SAsraSmhiSnp 


OUH 


CwnpuorOuM 


CUtVu 


AnpaiSvnn 


rknins 




Hew 


canpuvana 




SorsonF^Kirafiiaii 


Elkni 


CmdLinScftnnSBuia 


D«Mnmw 


ConvitgrOilH 


S«iUvn 


BF;Enir7ma 


ftewl 




Flnnti 




ttfUffi 


S«tM^iV'« 


BuMTDr 


CW»mC«mp«rS«a» 


CfiKfmn 


CanTuvnaen 


toviar 


BmuK^ 


A[bru 


UvntM BuuwM. Cmol Eyi. 


W^JWH 






Tn^enk^ 


Portand 


CkBCCNTIpUV 


Uinkn 


<kiryMSr<7>aq« 


SwfFqFwn, 


CuMCenwtn 


tMm 




|J«r8 


Cnninilne. 


&»k^<: 






^^(iln'iKnihial 


SLThsna 


Ce>TJi»5p«Jai* 


Bu*,^ 




bbrkli 


bhtarfiookCHMi 




OaWBatmn 


Hni»^;^-i ATDSohm 


S)^ 


Calnaaoiakn 


F^udtli 


^'-^^'r 


C*mH& 


|te%SQ'|B« 


Coiiriu 










CotrruurBaiutK. 


&- 


C«h<.bci>Pn(»lf 


OMlti] 




Cam 




Nlirti 










CrdiCanpLnr 




C«4Hh«l>PH#h 

C«dH,BMI>P»0#h 

Cotei. BmIi PH#fa 


Wft»u« 


r 






^ 


OtutN, 


WjuviA 




au*y* 












Udftnwm 


C«i»Li«r&)haA 


StJ^ 


MfmBoctitHtin 


Tomi 


TriiUSiwt 


Jkfkrti 










CUrpuurBMai^ 


H»™*igi 


Co.T»iA*ir«j.tfB 


Unpian 




ttfSini 


tlBU 












Coir^trlVur. 




CflnpOptiJKtll 


Uk^L«. 


QtcnrtCvrvuitrSu^ he. 


Longb.^ 


Aitv Conpum 4 QKtmra 


Am 










CcflVUMt^t^VMI 


Fta.^ 


ciiiuwisr 


S«l«, 


ZCfCVfpfttCi. 


Wi9iUC«i 




HornUj 


J ^ M^ T' J 


.• J A 


-* — V 1 




BrelCsnixwi 


&M»U 


C«»a«HM* 


OWwn 


BV^C«'^Pui*4 


SwnincH 


D*BHC^C9r<pu(rC**r 


Hm*Ai 


A /I /J// 


A 


Tl/:r»y^ 1 ^ 




FbpprVtaH&Aw* 


Pihvi 


CunpilwairiMT.hc 


HwnAxi 


EfCMfeiHkrt 


&vncu 


JiCA*pu 




/H / 1// / 1 


r /-\ 


1 Ir^vl 1 r- 


1 *^ 


GenlBods 


ttngi^Pr^aw 


Can^soMjnJ 


CmmI 


J^MmKofl 


SirFnrcn 


lilu 




.^Ta r J-i V. 


Jxk 


L/V^dlV,. 


,L O, 


OwhifCoRnla-Cecto 


LJvwii 




^Kfun 


fUw Campiim . SAiM 


RcncraC-j3.-xnBt 


lULCerntUEriVdEn 


tesw 










MMM 




Tcnna 


HwdngWirMm 


SsCiar 


T>KCrUUntt^ 


iasJKEE^uT 










ifcf^itewh. 


yena 


tUttvK 


Tasno 


HrandwiSAMMikYouii.l.'E BPtthr 














Hanr.CtnfV E>v«rS|rf>ifflS 


bAli 


Cttpui 


Otfxn 


hontCanpuiiaCtw 


Cmn 


AidcVvjk'FlK 


Ctaji 


T^ ^^ 1 


*. A / 


r • „ „ j'~\ 


^t 


PBem^<S(*rpiura&r* 


FWHiri 


&|r*MiCcnnlMgrMi 


Uftnd 


hwntter*«wvC«<w 


lUVrf»f 


bwiEyui,TK. 


Nd^WiA 


1 1/^1^ 


r f\/ 


ICC 1 1 


Till 


$«-T^kC 


Mhd3^ 


CVFMiMm 




tan»&rw«,C«. 


SaiLMn»g 


CwrfOvSohnnCcnrHDn 




JLvvJll 


L iV. 


LlOO V--' 


LIL. 


SKHttekhTlvWd 


MA^ 


MrPlntTlw 


W*j 


hfl-BBSwrtCl 


S^1hr«i» 




LH 










TASklSCe.hc 


Urcwr 


CmiW-figX^ipWi 


K-^B^ 


k<^Pv<id4S«l 


S*>he« 


Cwwrm*! 


VfTTvnHIl 










TmCerfiwCmv 




DiMi*C«mL».ta. 




twrecrttiTntm 


S»ti<U« 


CkgiilWirt 


Ifipvr^ 










■n^ftwfttt* 


HKhK>tu9 


EhJWmjM'l 


MmUM 


KjCorv^Af 


{3qndiW» 


DgUVHrt 


«*»n 




--^ 1 ■ 


r* 




TrM^C«efUM 


Mn 




iC'VW 


L>,iiftNt«i 


VtV* 


DOSCCA«sWC*W 


JiW 


/ 


^-^ 


f-/-^-*- 




IMlBiMlnign 


Sirin 


GUikkvan 


csr 


UWhtto^BM 


nKw«« 


F?S«f»4>«SC««», 


Up^^^VM 


1 


.A 


It )l 




aphtorti 






Tmna 




aKMy 


Kwf t> Pxa C<r<»m 


□wv^ 


\ 


■^CKxl 


± v^l 




l^LHl 


¥*wt 


4wwT.V.lil 


OMMdv 


LyvEiMTW 


EUMcy 


Knh.ilBrvurei 


hnt 










SobiMCVMeUM 


Amu 


t4U.JMp.il 


am 


Ites P. T«dtBfcgM 


'jVTiM 


<3:^.Il3mni 


Cnp) 










T^Cai^^PSw 


W»4KJ« 


t^gWlCeRTxAn 


WhCif 


NhiSm: 


Dm 


Cnf.Ll^vmi 


Orti3i!?i± 










fiflnnP-uBfrit 




HmterCBksil&ni 


Flaw* 


HamUfcCn 


S«9«p 


^^ndv^l^wunii 


&»<:*»; 


Aniciz 








Jb0fttwn«^t»4. 


VMCoMiM 


UM^dnnei 


Kinn 






tC:2^ 


Cfttr^ 


• « 1 ^T rf 


'^ V ^ ) 1 "3 ^^ t 1 1 


1ng 


&h*4HK4 


C^mWviHi 


licHiMi^ 


Tltnt« 


OpbwTidiBtida 


LaA^QriH 


Utfabr^Cftn^iivWerti 


Scmtf^U 


'//tr 


^Oiliulii 


W«*i«*PhtI 


OvAi&iti 


LJcMnHl 




PntanAi] 


S«iD»gc^ 


U«rtr|iEi?«fian 




V? 


h«H^ V .^ r ■■ K M^.^ A ft ft 


IBDBBK^ 




L^nwitHmlteM 


t™* 




iifla#e* 


\J^i9 


Oi^ 










B<d]i kbnTidttitog 


gra:! 


UKrtrwil 


Tbiw* 


P*4nk<. 


PMAH 


itmaittifmiiK. 


0«p» 










C4rvuMjt>iilihr<F.-« 


U»Vf» 


LyrBTtchiafSwwws 


OCEMI 


hfiBrtnm 


MnnHigrknh 


UcnTfcftSnAm 


>inn 










CWTVUM HIvdKVSk'Mai 


Nnhrfi 


IkTIIFiQi 


9394 


HASoitan 


GTiJtVida 


UtnTih 


Kl,-«l)H 


t 


~r* , 


- „ 1 




T,Y,Cw7 


ai'te 




T>WWB« 


A4mMC«nix**Qr.]rc 


^)«- 


^Sat». 


Gvwn 




1 r\f 


O \7l 




jEoa 




Ur.DriMM 


OlM 




SVO^ 


SsthwiCfr 


3eMt 




\ \. 11. 


<^ V 






Cnw 


MCHJKft 


HunFAfe 


8ci]«rttir4ine. 


S«binPUCrti»e« 


Ow»p 




J-m ^^^ V 


^CV V . 




MSfiKTstki'bfam 


SinAnerai 


Nu-(rtaTKk 


ft^ 


Stfi4^B^V4»3r»•:T4 


USLi^STMl 


5qt-MFVSW«t 


HjnevtfPt* 






J 




AT«H&TT¥itoSirSHra 


Qaa 


^■chkfcn 


Com 


S<«««iCAr 


Antfvr 


SqC-nPlLS 


IV^«efaB 












RKMrti 


Pm«iCM(un 


Lnton 


S*imnC¥*M 


PmAt« 


LhqMC««W^ 


S^fr^S 










Eb<*4 


Arb<^ 




Lnlai 


SoCiwiFni 


SMFkH 


■AwT^PaiM^MiCO 


Pe^ 


I 








B«Hqi 


Ai^ 


pBvn&otaLM 


Ciina 


SctPinrir* 
SabMwiPId 
SotHnSeUlomPU 




SoUConpiU-C^. 


a^ 


k^ 








S 


SmAruw 


Scmlw^Cemi 
9m»t»rtPtK* 
8<Mlw)PM 


P«*i»y 
Cecvn 










ScinIA 


U3dP» 


CtlCcn^ 


totem 










Bn/nrv) 


CUM 


ThiUtHnPnifci 


HAnbm 




SoAPutduw 


CorrvwwCWTW 




SI;D4li 


Un*^ 


Uvtj Sdhm Cniamt Smhm 


Cutf 


ByaSwp 


AbKFl 


UriWBKtaM 


WIMAM 


TTweodiVnih 


S«iFnina> 


CaqF<AiC«W 


Lbvi 


SIliDMk 


Uw4 


ll*miP.iUwSt> 


tm}kM^6a 


C«tpiwEiH 


CerpuaChna 


WorifiaaHBiOQ 




T>*l**(C!inp«f 


El Clin 


CwpJwPwfiilrc. 


Lfaf>Bi<i[Ur 


Sip EM 




Li^LCvPvuMn 


HwYci* 


Corf^iarUbflc 


AidH 


Liu5ak^ 


&t.'«tad 


ThrdArtfliaNnn 


CUiVoli 


CPJInc. 




StpDck 


NnBdncn 




Varrtn 




gjta 


SMiGeSwi 


Ukir 


Tomrteob 


cm 


inb:-«Mein 


hl&t^lHa 


StpMi 


SnlHWd 


I*WEDfiC« 




RtSCca^ulHSdrvcn 


TtiiAHi 


Ekfi^ 




TiMrbxifci 


CtuKi. 


UcFDCempulMCfctHilrc 


hdwpcfil 


StpDtth 


ftOikBiM 


Oulih&AnHlx. 


VteauT 


UuMlBadikt 


0«« 


AoruHv.ki; 


ONbcc 


TwHBecU 


C<mni 


fKtgn.'vta&t 


\kTtm 


SdtanCtr 


Qfwiinipa 


OBSoftMn^lrr. 


FwdHi 


tfebDpdlirC«Rp<« 


HcMahon 


Cvmtoi-He 


UkWHl 


TMvBxia 


UanuiV«v 


T><iB(KkCwTW 


Ebemrvcn 


&ynnn^4u* 


KilnvH 


nwlnUHka 


TKiMnda 


Uen Search 


HocBUn 


LUPniiI9(uki.lK 


uonwi 


T«.wb»li 


Skwwu 


VonConipuUfi 


WOIU^HK 


S^uSsaCea^ur 


LJwU 


ftetuivBacb 


Ffadwir 


S(ininUtn.T 


WrUuFih 


JuplvTKtmpgiHiM. 


R^ilH 


TmrBbob 


SbiUAo 


tenCanviMrCcrtnr 


hdnpcta 




Ow 


ShnvTuM 


^towYat 






Lcgc^Nm^ 


lkn;mil 


LkwtfulHHi 


Hc%w»« 






TlwEduCcfirwcuF 


Cb 


BwwBiMk 




ir> 7hiC<KfW&T»vn 


S^nMone 


iUbnin 


VI-CAiifc- 


VntQiMna 


s«io.r 


CempLvSAMmi ^ftca 


QnUom 


riCtoCuifkJws»op» 


YpUn 


&*w>lSicfi 


Sonk 


TT«Cenpu«r5»0l 


A.T«I*3 


OnfrMwi?CnhC 


H^ 




S«iD»ge 


CanturtlLkn 


ElnUorm 


l*TT^qfl 




SohmCiy 


Sm^viiir 


TtvFKtntKTGriMi 


Mania 


OuifaaLcaEarh. 


Metwi 


nClConpkiKCtfnf 


bnu 


GreiwnCsnpin 


DnMcn 


arrruroi, 


UnnHfdB 




F«p» 


TOnffJ NlHI wd'-'I^A'V 


f^rWonH 


SurT«fcMouhuna 


SlLhuwI 


WVran Cecil 


bMT 


&^Sunf 


Arm 


CttrpjslKariMWaU 


Un^dB 


Soman Ur* 


mwnin 


U£ 




Siituua 




lV»li3ciaktl«wi 


Hcir"DM 


Eoa 




DaqvuHAul 






CManiQi 


ARrnHeBm 


SittAhiCcr 


CD'i CvTVUf Conocn 


SuUaiH\ 


QOaiti 




JbtD^d^hri.*^ 


IVOu 


Co«p>««i.flc,kr. 


Birwk 


%r<»T«ln| 


NrrroA 


Ua}>$r>ii^Ge» 


iMUi»C*t 






iUnrtM*.Hi4n4 


*W1 


frw«*n« 


UMitfL 


J«45ii4«wi 


i%«i(lrM 




Br«Mrn 


PtBOtt'iCwfipdn 


ft-. 


i>*«WM«C4n«CE|»f 






tMmaiSv^ 


lb«U^ 


Hq^ 


LWkWtdSAqn 


NwTt^U 


T>iiC:vT«iMrC*ltf 


UWT 


^SK 




t^iMSdnmrihi'^^in 


Crarf 


Cjuneuvhfdun 


*>* 


UMf:Ct»¥il« 


Uvtisufi 


^■^d<r\ 


b^Wb 


ThiUnMirti 


T9rn4r«i 


AjfeWeSvCtf? 




&««sJrD#r«aoi 


B^^CiM^ 


C«i!«iwR««w 


BM^ 


S*i*»Crr 


OwitwPin 


»«4t^ 


a? 


Unc«AE«a>Mi 


MvMC<r 


3mna 


Aitiinn 






Cs?¥U*F%»« 


Jk«n 


S*iW=iCins*tfSS 


Wtho 


3wita^ 


VdHConvuvBfi 


Bmotlrn 


35=«: 


rta-Jl 






UcdWoV 


LAhHDOd 


SUCl 




3wvw^ 


tMrbMH^ 




RVTH 


Fr^CecwjeCwdi 


fa:-.!! 


Li^eCcnvuiH 




PnfpnConMH 


CabndaSprTyi 


CeepUKlVwMnskr. 


L«=Vi 


3mwi 




«1i^Cdn«iUte 


lM>YM 


fit* VcBa i CoTwiB C«Mr 




JdEA 




PtaeMSdMnlBKimia 


CotmtoSfKV 


CoqUHUruhE. 


Fbfww 


Swin 


IfcVMS^ 


MmCaevLHitK. 


HetlMlt 


ICCcrrpuur 


Nwtok 




lMdM*.Wi 


CokntiSprrv 


£qwiS«vai 


rto«» 


9w*n 


khvwia 


litMthCtnlfii 




TcKlSdSxn 


PcraWfaa: 


MhMi 


CiwwtiLHaV 




Oww 


HmlrrCaM 


LuH* 


Shn^nnHdUw 


tftWMftAl 


&flO 


S^ 




CHipuk 


JoFnViftaMn 


CMfOiitWA 






^MnCdcki 


LjuMi 


»-4i^ 


RatiAt 






ViprwUnSron 


WoHbllV 


LhnHOOuEtJpfwi 


AfiU|M.U4u 


CmXllDt 




FUliiMrtJCdnVuiHi 


Uhvvi 


9n)n 


SLPld 




Kwww* 






btSd! 


U**.f* 


A«il/«Cu3« 


HvSgid 


GdWiCflnpu^Sfun 


LlH^^ 


Swin 


hhw 






ArqunjSKiwKi 


£pMr> 


<u^t,*. 




AAUSfilARMCttTpUW 


Sknrt 


TTwCanpMrUB 


LOAdi 




Hsvln 


NntCvtw 


SZ,^ 




LWinndM 


UiiJiFcudlSDnt 


D*r«n 


a^Tpira 


Q«tv 


!■«'*"■'■ 




V^^lx. 




PwUrMmkt. 


HpPvI 


BuaymindFittei 


5p«lu» 


Pfrrtq 




GHfuwi SdM»i Camcura 


FVa* 


&>»3tM 


UrwDriHra 


WnrfiCanpuwSrv 


CfrnJL*« 


Sr>KnneT*ctnit)pi 


Butv» 


&Vf»*^ 


Sf^bi 


Tht AmgftCntriil ScDtvti 


Edreon^h 


ClKTeBKVBro 


KKnEte.1 


ClT<Msm 


&±^bj7! 


Itaxsca 




SctanCI) 


OmJlott 


BJbfhM 


SfA 


Snkg 




ftitnt,Cxw*ft. 


SfflJJrvfli 


Chs-^^jkTitb 


Srweprt 


i«A)ndG4rpJ«tCrt«r 


0«l.-TSFiryi 


S^^ 


^5S* 


BdiNCv'Tvki'Se^vv* 


FvOnDnifl 


PTWono 




aiCCInMQucri 


0«T 


Ut»«»Hr>t 


I^IUM 






ScCkilCit 


n*tfi 


Syunoct 


Xeft 







Amazing Computing™ is also available in most B. Dalton Booltsellers, B. Dalton Software Stores, 
Crown Bool^s, Software Etc., selected Walden Books Stores, and Walden's Software Store locations. 




mnGA 



Amazing Computing For Tlte Commodore AMIGA^^' 

ADMINISTRATION 

Joyce Hicks 



Publisher: 
Assistant Publisher: 
Admin. Assistant: 
Circulation Manager: 
Asst. Circulation: 
Corporate Trainer: 
Traffic Manager: 



Robert J. Hicks 
Alisa Hammond 
Doris Gamble 
Brtgitte Ronee Plante 
Virginia Tarry Hicks 
Robert Gamble 



Intemational Coordinator: Donna Viveiros 
Marketing Manager: Ernest P. Viveiros Sr. 
Programming Artist: E. Paul 



EDITORIAL 



Managing Editor: 
Associate Editor: 
Hardware Editor: 
Technical Editor; 
Video Consultant: 
Copy Editor: 
Copy Editor: 
Copy Editor: 
Copy Editor: 
Art Director: 
Photographer: 
Illustrator: 
Research & 
Editorial Support: 
Production Assistant: 



Don Hicks 
Elizabeth Fedorzyn 
Ernest P. Viveiros Sr. 
J. Michael Morrison 
Frank Mc Mahon 
AimSe B. Abren 
Lisa Friedlander 
Andy Patrizio 
Greg Young 
William Fries 
Paul Michael 
Brian Fox 

Marilyn Gagne 
Melissa-Mae Viveiros 



ADVERTISING SALES 

Advertising Manager: Donna Marie 

1-508-678-4200 

1-800-345-3360 

FAX 1-S08-67S-6002 

SPECIAL THANKS TO: 

Buddy Terrell & Byrd Press 
Bob at Riverside Art, Ltd. 
Swansea One Hour Photo 
Pride Oflset, Warwick, HI 
Mach 1 Photo 



Amazing Computing'"' (ISSN 0886-9480) is published rnonttily by 
PiM PuMicalions, Inc., Currant Road, P.O. Box 869, Fall River, MA 
02722-0869. 

Subscriplions in Hie U.S., 1 2 issues lor $28.00; in Canada& Mexico 
surface. S36.00: foreign surface forS44.00. 

Second-Class Postage paid at Fall River, MA 02722 and adSSonal 
mailing orfices. 

POSTMASTER: Send address changes to PiM Publications Inc., 
P.O. Box 869. Fall River, MA 02722-0869. Printed in Ihe U.S.A. 
Copyright© June 1 990 by PiM PuWicalions, Inc. All rights resenrad. 

Rrsl Class or Air Mail rates available upon request. PiM Publica- 
tions. Inc. maintains the right to reluse any advertising. 

Pirn Publicalions Inc. is not obligated to return unsolicited materials. 
All requested returns must be received with a Self Addressed 
Slaniped Mailer. 

Send article submissions in both manuscript and disk formal with 
your name, address, telephone, and Social Security Number on 
each to the Associate Editor, Requests lor Author's Guides should 
be directed to the address listed above. 



AMIGA'" is a registered trademark of 
Commodore-Araiga, Inc. 



KNOWLEDGE 
MACHINE 

Discover the power of the Amiga with 

Resource™ 

Intelligent Interactive Disassembler 
for the Amiga Programmer 

• Resource will enable you to explore the Amiga. 

Find out how your favorite program works. Change 
annoying features. Examine your own compiled code. 

• Load/save any file, read disk tracks, or disassemble 
directly Irom memory. 

/ Automated symbol creation: 

JSR -$1E(A6) becomes JSR _LV00pen{A6) 
MOVE.L #S3EE,D0 becomes MOVE.L #MODE_NEWFILE,D0 
Virtually a// Amiga symbol bases supported. 

/ Now supports user defined symtxjl bases! 

/ Single-key forward and backward referencing makes 
following subroutines easyl 

• Special support for base-relative addressing. 

/ Many files may be successfully reassembled directly 
from Resource output. In a trial disassembly, 
"Preferences" was disassembled, and the resulting 
source code assembled into a working program, all 
in under 15 minutes. 

/ If you're serious about disassembling code, look no 
further! 

"Resource is fully-featured and flexible... Everything 
is fast. Tti9 program is astonishing in many ways. 
The massive size of its internal tables boggles the 
mind. I admire the remarkable accuracy with which it 
makes intuitive guesses at the nature of certain bytes." 
— Jim Butterfield. Transactor Vol. 2 #5 

Now shipping Resource V4.00 - Order yours nowl 

VISA, MsatsrCaiil. chsck gt rmn»y order accepted • no CODi. Not available in rslail slores. 
Circle 16Q on Reader Service card. 



The Puzzle Factory, Inc. 
P.O. Box 986 
Veneta, OR 97487 
Orders: (800) 828-9952 
Customer Service: (503) 935-3709 




$95 



Amazing Computing K5. 7 ©1990 



\ 



\llPRULCONTliT 



Commodore Announces CDTV 



THE CONSUMER ELECTROrflCS SHOW 
CCES) held twice each year, has ahvays been 
regarded as the first place to see and experience 
the consumer products tliat will shape our lives. 
At CES everylhing from FAX phones to car 
stereos are shown lo llie large number of store 
buyers, investors, and press who gather e\'er>' 
sLx months to see what direction the world is 
taking. 

Commodore Business Machines usually 
attends CES, they h3\'e always maintained 
producis such as the CM and 128 computers as 
consumer iterns. It was a little unusual, 
however, that CBM did not attend Comdex 
(running on almost the exact same dates in 
Atlanta). Whispers, rumors, and wild guesses all 
suggested that something major was in the 
works. 

Surrounded by Nintendo, Sega, and a 
host of entertainment software companies, 
Commodore's bootli demonstrated Amiga 
3000's, A2000's, A500's, and even a few very 
special MS-DOS machines (including a slick 
little laptop, the 286LT). Yet, still funher in tlie 
booth, behind closed doors, stood the newest of 
Commodore's products. A small black box, 
extremely similar in appearance to a VCR, was 
performing Amiga software and demonstrations 
from compact discs. While bootli personnel 
were busy demonstrating the .separate abilities 
of tlie new Commodore Interactive Graphics 
Player, they repeatedly reminded everyone tlist 
the player was not a computer. It was a new 
education/entertainment appliance. 

Commodore calls tills ntw forma! 
Commodore Dynamic Total Vision or CDT\'. 
Amiga developers call it opportunity. 

Hybrid Technology 

Once again, Commodore has been able 
to set a standard and create a technology before 
its competition. Compact disc players for 
computers is not a new concept. However, this 
hybrid technology of an Amiga computer 
integrated witli a compact disc player permits 
tlie user access to vast amounts of computer 
ability without u.sing a computer. 

The technique is similar to that found in 
everytiiing from refrigerators to automobiles. 
Computers are now working quiedy in tiie 
kitchens and under the hoods of a major portion 
of the American population. This has been 
successful because the computer is integrated 
into the design of each unit and the consumer is 



never face to face with the computer. People 
who would balk at using a keyboard, have no 
difficulty setting the timer on tlieir microwave or 
starting their car. Yet in each incident, these 
people have interfaced witli a dedicated 
computer and have instructed that computer to 
perfonn a function. 

Commodore lias taken tliis concept and 
integrated the multitasking and special graphics 
capabilities of the Amiga with the large format 
and (almost) indestructible nature of the 
compact disc. Commodore views the CDTV 
player as a means for any person to research a 
subject, entertain friends, or present a business 
proposal with computer efficiency widiout tlie 
need to access the computer. 

Although Commodore executives have 
flatly stated tliat they will not pre-announce 
products, Oiey have quietly suggested tiiat 
peripherals for existing Amiga 3OO0's, 2000's, 
and SOO's would not be far behind. Their iriterest 
in making tlie CDTV format available to Amiga 
owners is to tap tlie already large installed base 
of Amigas. 

CDJVFuture 

With CDTV, we are witnessing the first 
views of what life will be like for all of us in the 
next decade. If we can forecast tlie future ba.sed 
on the directions of tlie present, then we must 
assume diat the age of information will 
continue. We are forced to view the abilities of 
video as more than a means of entertainment 
and look at tlie advances the Amiga has brought 
to the media in presentations with graphics and 
sound. Video will continue to become more 
integrated in our lives and our work. 

The Commodore Interactive Graphics 
Player is tlie first tool designed to take advantage 
of both computer ability and ease of use. One of 
tlie main hurdles in using computers more 
successfully in education has been tlie inability 
to orcliestrate the computer into tlie general 
curriculum. Computers became an extra subject 
instead of a means to teach existing ones . Slowly 
small steps have been made to integrate the 
computer into .subject matter, but tlie advances 
liave remained minimal and far from the 
mainstream. 

Now Commodore has offered tlie 
educators of our world the opportunity to 
address vast amounts of material and integrate 
it into a presentation. Whetlier it involves 
researching items dirough an encyclopedia or 



discovering tlie world tlirough an interactive 
atlas, teachers now have a tool that is easier to 
use than a film projector, and one that is a lot 
more predictable. Students can become 
in\'oIved in dieir studies instead of being 
pa.ssive. With the right software, CDTV can 
become the one format tliat no school can afford 
to be witliout. 

Home CDTV 

The same features that make CDTV so 
important in an academic environment, will also 
make il a vakiable tool at home. Yes, there are 
people who have spent tiiousands of dollars for 
encyclopedias, globes and reference books, 
only to have tlieir children avoid them like the 
plague. However, CDTV is different. 

CDTV in die home can be an educator 
that works as an entertainer. The eniertaiiiment 
market is ver>' excited about the possibilities of 
what is available tlirough CDTV. One of the 
most often asked questions at CES in the 
entenainment booths were "Have you .seen 
Commodore's new player and what did you 
tliink of it." This was almost always followed by 
the statement, "We will be doing sometliing for 
it reai soon." 

If Commodore's third party \'endors 
come tlirough, there will be 100 titles for the 
CDTV player by tlie launch in September with 
an additional 100 titles available by tlie holidays. 
Add tlie optional Amiga disk drive and the 
CDT^' player will be able to access all the 
software currently available for tlie Amiga. One 
caveat, the software on ilie CDTV player will 
only be as useful as the peripherals you have 
purchased: remember, if a program calls for 
keyboard input and you have no keyboard, you 
are stopped. 

Innovation 

Widi Amiga 3000's now shipping in tlie 
United States and the promise of CDTV, 
Commodore is becoming the innovating 
computer company of the 90's. But remember, 
don't lose the remote control. 




Don Hicks 
Managing Editor 



Amazing Computing V5. 7 ©1990 



Now You 
Can 




A Professional 3D Animation Rendering System for the Amiga 
For More Information Call ^WjtifJ9ifj^0 6]2*?66<022i 



Circle 115 on Reader Service card. 




Dear AC: 

I just finished reading the April, 1990 
issue of Amazing Computing, and I feel 
compelled to write. 

John Steiner writes again about prob- 
lems with revision 6. 1 motherboards. I read 
several months ago about a so-called prob- 
lem with revision 6 motherboards and 
multiple expansion boards that turned out 
to be due to a batch of slightly flawed 
Motorola 68000 chips. That anicle offered a 
couple of solutions. 

The simpler, and probably cheaper 
approach is to install a new CPU. I under- 
stand one costs about ten dollars. The 
article also stated that revision 6,2 board.s 
are modified to accommodate any ftiture 
batches of loosely made chips from Motor- 
ola. Is this the solution to some of Mr. 
Baebler's problems? 

Oran Sands' repon about possible 
genlock problems made me angrj' after I 
thought about it for a while. He writes that 
the quality of genlocked \'ideo may be 
affected by the fact that ciilTerent members 
of the .\miga family put out RGB signals at 
different power levels. At least that is what 
I think he is saying. I am not an engineer or 
\'ideo profe-ssional. I do not own a genlock 
either. Certainly Commodore is respon- 
sible for the variable power levels of the 
RGB signals a cross the Amiga family, but he 
and tlie genlock makers are not totally free 
of blame for the problems this may cau.se. 

As an Amiga 500 o?.'ner, I expect that 
if someone presents to me a product tliat is 
suitable for my machine, it will work as 
advertised. I expect the product to he 
properly designed and tested, i infer from 
Mr. Sands' article that .some manufacturers 
never tested their products with die Amiga 
500. Further, it appears that Mr. Sands 



either led or allowed people to believe that 
genlocks he was paid to review and test 
would work in a consistent manner on all 
Amigas when he did not know this to be 
uxie. 

The problems this may be causing is 
not a result of Commodore suddenly 
changing the rules of the game again; I 
think they are tlie result of sloppy, unpro- 
fessional work by some manufacturers and 
himself I am offended when he tells me 
that he and some genlock makers did not 
do their homework, and any problems this 
may cause are all Commodore's fault. 
BALONEY! 

I once bought a peripheral for my 
Amiga 500 after I quizzed the president of 
the company about the suitability of his 
produa for my hardware configu ration. He 
assured me his product -ft'as ideal for my 
set-up. It did not work. I am certain the 
product was ne\'er even tried out with a 
500. I battled this product for a couple of 
weeks and got it to ftmction (like a car with 
a top speed often iniles per hour). Later the 
company told me there was a "timing 
problem", as if it was an act of God. Fortu- 
nately, I Uiink that company is out of 
biisine.ss. 

It is popular to blame Commodore 
for all the problems in the Amiga commu- 
nk)'. I agree Commodore deser\'es much of 
the criticism directed at it. I also kno-a- there 
are many dedicated and responsible .\miga 
developers. However, when an .\miga 
developer, hardware or software, does a 
less than thorough job of designing, mak- 
ing and testing his product, tlae developer 
is at fault, not Commodore. That developer 
must be held accountable. 

Peter Margenau 
Shohola, PA 



— Mr. Margenau has every right to be angry 
about the gen!ock/RGB level situation. 
However, I think he's getting mad at the 
wrong people. Commodore made the 
mistake ofassuringeueryone that all Amiga 
models had the same signals on the RGB 
port. If I bad a dollar for every lime 
Commodore proudly mentioned their 
"iVTSC standard outputs" I'd be a very rich 
man. The manufacturers and reviewers 
were unwitting dupes of these statements. 

The reviewers bad no reason to 
suspect that there was an interchange 
problem. The manufacturers had (in some 
cases) noticed the varying levels of RGB 
signals but no one until myself noticed the 
pattern across the models. I've since been 
thanked for these findings by several 
genlock manufacturers. Up till now they 
merely thought the vaiying levels were due 
to Amiga 's lack of quality contml. (This is 
pa rt tally true. My tests have shown that even 
within models the levels slill va>y.) 

'Tiy manufacturing a device to work 
properly with lerels that you know are going 
to vary quite a bit. It isn 'teasy or cheap. The 
manufacturers tweak their products on a 
bench with whateverunit they use. Often a 
500, sometimes a 2000. Having 
Com m odore 's ass\ t ra nee that the levels will 
be the same led them doivn a primrose path. 
Several manufacturers designed their 
genlocks with adjustable inputs to allow the 
user to cope with the problem. Some 
genlock's design was locked in when the 
only Amiga sold was theAlOOOOvbich as 
shown tvas indeed almost to the proper 
levels). 

Genlock quality has varied so much 
in the past that reviewers had no reason to 
suspect that there wasasystem interchange 



Amazing Computing V5.7 ©1990 



IMPmASOOr UPGRADE KIT 

Now Available with 50Mbz 68030 Acceleration 

Create the fastest Amiga in the World with an A2000 and ourA3001 Kit. 



Choose the IMPACT' A3001 Upgn 
Kit from GVP to fiat the speed and 
power of leading-edge technology 
into your Amiga'". 

Enhance yourproductivity and create 
more powerful results when you 
choose these key features: 

• Factory installed 68030 CPU running 
at 28 Mhz, 33 Mhz or 50 Mhz. 

• Factory installed 68882 Floating Point 
Processor running at 28, 33 or 50 
iVlhz. 

. 4 or 8MB of 32-bit wide high 
performance DRAM. 

• Built-in Autobooting High 
Performance Hard Disk Controller 
with data transfer rates well over 
700KB/sec. 

• Quantum 40MB or 80MB hard disk 
drive with an average read access time 
of Urns 1 19ms on write) and 64KB 
read -ahead cache. If you already own a 
hard disk, this item can be optional. 

• Asynchronous design allowing the 
68030 to run ASYNCRONOUS to the 
rest of the A2000 
improving GENLOCK 
compatibility. 

• ZERO SLOT SOLUTION! 
With the A3001 Configura- 
tion along with the 
bundled 40Q or 80Q Hard 
Disk Drive ALL A2000 
EXPANSION SLOTS ARE 
LEFT FREE FOR FUTURE 
UNLIMITED 
EXPANSION! 




Up to 8MB of 32 Bit 
Wide DRAM 
Hard Disk Drive 
Interface 

Optional 68030 Boot 
EPROMS (UNIX ^ etc.) 
Autoboot EPROMS 
for Hard Disk 
40MB or BOMB Hani 
Disk Drive 
32-Bit 68030 Bus 
Interface 
68030 CPU witli 
,28, 33 or SOBttB Oscillator 
^68882 FPU luniiing 
at28,33or50Mhz 



A 



^en you compare, the choice becomes clear. 
GVP is unbeatable for price and performance. 



AIIA2000 
Expansion 
Slots Free! 



A3001 

Upgrade Kit 

Installed 




COMPARE: 


A2oao 

+6VP 
A3001 


CBM 

A2501I/3Q 


CBM 
ASOOO" 


68030 CPU 


Y 


Y 


Y 


Maximum CPU Ciock Speed 
available & shipping Tadaf. 


SOMhz 


25Mhl 


25MIK 


FaDtory inslalled 6aS82 Floallng Paint 

Processor Clock Speed, 


Z8-50Mhz 


ZSMhz 


25MI12 


Hard Disk ConlroHer on 68030 
Processor Board. 


Y 


N 


y 


Niimtier of Open Amiga expansion 
slots with hard disk drive and 
8MB Fast memory installed. 


5 


3 


4 


Alfows user lo start wilti low-cost 
A200D Amiga system and grow all 
(tie way to SOMtiz 68D3Q performance 
Wilttout sacrificing anyttiing. 


r 


N 


N 


Brand name vendor witti solid reputation. 


Y 


If 


Y 


Typical Jb)' Tracing speed relative 
to a standard A2DQD (2SMtiz Impact) 


22X 


13X 


13X 


Fully Implements 68030 Burst Mode 
upto33Mtrz, 


Y 


N 


H 




IMPACT and QVP are trademarks ol Great Valley Products. 
Amiga, AZOOO and A3000 are registered Irademarks ol 
CommiJJ(^re-Amiga. Inc. 
UNIX Is' a registered trademark ot AT&T. Inc. 



CREATVALLEY PRODUCTS INC. "W" 

Hew Adiiress: 600 Clark Ave., King of Prussia, PA T9406 

For more information, or for nearest dealer, call today. Dealer inquiries welcome 
Tel. (215) 337-8770 • FAX (215) 337-9922 



Circle 123 on Reader Service card. 



problem. It would merely appear to be 
another genlock of "fair" quality. My tests 
were always done on an AlOOO until 
recently, when I began to indicate the 
model of Amiga that it was designed for. 
Mr. Margenau should be thankful that the 
matter is now public. 

Most genlock manufacturers are 
computer people making video products 
and they've found it isn't as easy as they 
072ce thought. MA GNI decided not to use the 
Amiga 's RGB analog signalsfrom the start. 
SuperGensivereretweaked after the release 
ofthe 500 and 2000. Others mayhavebeen 
readjusted as well. I knotv of some that 
weren't. 

Video professionals have become used 
to equipment that meets NTSC specs. That is 
considered a minimum requirement. 
Don 't blame the messenger for the content 
ofthe message. He only delivers it. 
— Oran Sands 

Dear AC: 

There seems to be a problem import- 
ing the .IMG dip art files into PageStream 
with some Hard Drive controllers. I was 
using a C-LTD (non-autobooting) control- 
ler without any problems, A couple of 
friends of mine liked the .IMG fdes and 
tried to use them. The machine would 
GURU every time. 

Solution? A member of our user 
group, (A.S.L.U.G.) Amiga Support League 
and User Group, came by a number for the 
MAX TRANSFER rate in the moundist of 
hard drive boot block. Replace the MAX 
TRANSFER number with 130560. 

This has solved the GURU problem 
with a MicroBofics Hardframe, and a GVP 
Impact SCSI. 

If you are having similar problems I 
hope that this will help. 

Lloyd Campbell 
Centralia, WA 



Dear AC: 

To all users of Deluxe Music... 

First, a tip: they tell me, and I've 
noticed, that its printer driver is compatible 
only with WB 1.2. 

This is a call to all of us to stand up 
and shout to Electronic Arts to update 
Deluxe Music as diey have DeluxePaint 
and DeluxeVideo. Deluxe Music is the best 
(and only) MIDI scoring program for the 
Amiga. Besides that it is terrific for compos- 
ing in speed and flexibility. I've been using 
it daily since it came out 3 years ago. 1 
couldn't do without it and ought to be an 
expert on it by now (though I only just dis- 
covered how to merge files... do a COPY 
(Amiga-C) on the file you want to merge 
into another piece of music, load daat other 
piece, then do a PASTE (Amiga-V). 

Dr. T's Copyist, the only other scor- 
ing program for Amigites, while it ends up 
looking more professional, is not really 
midi-able or very editable; you can't com- 
pose and play around in it because it's 
terribly tedious compared with DMCS. 
DMCS offers all the playfulness and options 
of a word processor... for music, and lets 
you do things you never imagined and 
impossible before. 

So write to EA that it's a disgrace they 
don't/won't update Deluxe Music for the 
Amiga (tliey apparendy did for Apple) to 
make it print proper professional-looking 
scores, Urge 'em to get on it, or to seek out 
someone who will do it for them. It doesn't 
need much more to be perfect; it would be 
worth twice the price. It's cheap now but 
extremely useful , The powers at EA say that 
there is simply no one there interested in 
working on it. Is tliere anyone else who 
would? 

If E A can go to the moon with DPaint 
and D'V'ideo let's get them to do it widi 
DMusic, Thanks, and here's hoping. 

■Warner Jepson 
San Francisco, CA 



^ms^. 



' AMIGA CHIPS, P.-\RTS & UPGRADES ■ 



^M!S^ 



■Fatter (Super) AGNUS 8372 -S99.50 wiUj simple lO mmutc ncp by siep msiruciions 
FREE Chip'Exixacior valued ai $15,95 at no cjiarge. 



•.A501-5!2RAMb(J, $79,93 
•!,3KictsanR0M S27.95 
•S320 S17,95 



■ 25614/100 

• 1 MEOi i/lOO 

■ S363/64 



S10,M 
S10,40 
W9,93 



■ A 500 H/D Power Supply $69,50 

■ A-2000 Powtr Supply $149,00 
' Amiga Diagnosicia/i #7 $10.95 



• AMIGA 1000 REJUVENATOR PACKAGE • 

New Product - Tlie Amiga 1000 Expansion Board is now available witli 

the following feature.s:Utilizes the Fatter Agnus Chip, 1.3/1,4 Kickstart 

ROM and New Denise * One Meg of Chip RAM* Clock-Battery Backup 

• Simple Solderless installation • 100% Compatibility with all Products/ 

Software • Various Packages Available • $479.00 complete. 



VISA, 


^R^n 



Prices sub]eci lo ciiiuige 

Cifcle 147 on ftMder Service card 



The Grapevine Group. Inc, 

35 CharlQUe Drive 

Wesley Hills, NY 10977 

1 -800-292-7445 



• (914)354-44*8 
FAX (914)354-6696 

1! 



— A recent conversation with Electronic 
Arts confirmed that Deluxe Music's printer 
driven are only fully compatible with WB 
1 .2. V}ey are currently having trouble with 
WB 1.3- Also, there is no update for Deluxe 
Music for the Amiga planned in the near 
future. — Ed. 

Dear AC: 

Congrats to Commodore on their 
new A3000 computer. It's sure to find an 
honored place in computing. Now of 
course we must all get on to the business of 
wondering what their next one will be like! 
Now that we all know Commodore has 
diose neat 2 meg Sup)er Agnus chips, 
they're going to have to release a computer 
with its video memory running at 14.28 
MHz, Of course that would enable a true 
HDTV output but tiien the Amiga's never 
minded being ahead of its time. Perhaps 
tlie next Amiga could even .sport dual video 
ports to allow monitoring of tlie control 
parameters ofthe video program it creates. 
Anyone for stereo \-ideo binoculars, 2 
screen games or 2 person computing at 
home? And does anyone wonder why the 
system expansion bus ends at die cover of 
the 3000? Maybe die tnidi is that the 2000 
series is limited to only 7 cards! 

C. Robert Spencer 
Spencerport, NY 

Dear AC: 

I am preparing to go to the U.K. and 
have a question concerning my Amiga 500. 
"VX''hen I arr^^'e, will I be able to simply buy 
a British Amiga power supply and start up 
my computer, or will I have to use a step- 
down transformer? 

Bobby R. Edmonson 
Honolulu, HI 

— 'When you reach your destination in the 
U.K. contact one ofthe local Amiga dealers 
and ask them if you jieed a poiuer converter 
ora newpower supply. Or, contact Commo- 
dore International in the U.K. (011-44- 
81528-9869). Tfiey mil lead you in the 
right direction. — Ed. ,__ 

Alt leftets ate subject to editing. 
Questions or comments stiouid be 
sent to: 

Amazing Computing 
P.O. Box 869 

Fait River, MA 02722-0869 
Attn: FEEDBACK 

Readers wtiose letters are published 
will receive five public domain disks 
FREE. 



8 Amazing Computing V5. 7 ©1990 



Apples, Oranges, 

Accelerators, 

&MIPS 

68030 Accelerators for the Amiga 2000 



by Ernest P. Viveiros, Jr. 



MOST AiMIGA USERS SEE THE new 
A30(X) and wonder why they will ever 
need an A2000. When discussing speed 
alone, it would appear that the new A3000 
would easily pass the A2000. Yet, existing 
AZOOO's may be modified by the many ac- 
celerator cards available. So a simple test 
of a stocked A3000 seemed absolutely 
necessary. 

Hov,'ever, trying to compare all of 
the 68O3O accelerators for the Amiga 2000 
would be like comparing apples to 
oranges to bananas. It would be unfair to 
place an accelerator card tliac 
boasts nibble mode 32-bit 
DRAM memories (found in 
NeXT and Apollo 
workstations) 
along side a 
low-end, 
bare 




bones processor accelerator that is just a 
chip and little else. 

This article is not meant to be the 
complete guide to accelerators. Instead, it 
is intended to open up to question and 
review the various options and configura- 
tions available in the Amiga 68030 accel- 
erator market. You will see that the bot- 
tom line shouldn't be which accelerator is 
tlie fastest, at which price. After all, any 
33 MHz 68030 accelerator is going to be 
considerably faster than the same chip 
running at 28 MHz, and that all like proc- 
essors basically mn the same speed. 

After all, a MIPS (MiHions of In- 
structions Per Second) 
measurement or 
Dhrystone 
bench- 




W, 



mark probably means nothing to a novice 
programmer who needs processing 
speed and hard disk access to speed up 
the software development process; or an 
artist who needs raw processing power to 
speed up the creation of animations, or 
even Joe Amiga who wants to add a litde 
pep to his everyday efforts. 

Each individual has different needs 
(including budget constraints) which 
would be satisfied by specific processors 
with specific configurations. It is our goal 
that after individual accelerator reports 
we will bypass the nonsense boa.sted by 
benchmarks with some real-world tests 
titat die user can relate to: compiling, ray- 
tracing, color separations, archiving files, 
working witli databases, etc. These num- 
bers mean a lot more to a user than a pile 
of MIPS. That's not to say the MIPS and 
Dlirystone benchmarks are not impor- 
tant. They are! They provide an 
excellent base on which 
to evaluate the 
speed of a 




*^^ 



Ohrystones/second (using burst mode) 

16666 




MIPS (Millions of Instructions Per Second) 



16 

14 
12 
10 

8 

6 

4 

2 

4 



14.807 



15.353 



9.855 



7.S47 



8.337 





Speed 2.0 (CPU Performance Test) 
12.00 




9.80 



10.50 




Amiga 3000/25 MHz [^ GVP Impact A3050 
H GVP Impact A3001 H Amiga A2630 
Q GVP Impact A3033 | Hurricane 2850 



main processor. In fact we have included a chan 
of the MIPS and Dhrystone benchmark.s (as well 
as one of Speed 2,0) for the accelerators we ex- 
amined. [See charts ai left.i 

Lefs get down to brass tacks. We are going 
to look at accelerators from three of the compa- 
nies which produce 68030 accelerators for the 
Amiga 2000: Great \'alley Products, Imlronics, 
and Commodore-Amiga. 

First let's take a look at the Impact .series of 
accelerators from Great Valley Products CGVP). 
Tlieir accelerator products for the Amiga 2000 
include: 



GVP A3001-4MB/0 

28 MHz 6S030/68882 , 4 MB 32-bit RAM, without hard 
drive. S2299.00 

GVP A3001-4MB/40Q 

28 MHz 68030/68882, 4 MB 32-bit RAM. with 40MB 
Quantum AT hard drive. S2799.00 

GVP A300i-4MB/8OQ 

28 MHz 66030/68882, 4 MB 32-bit RAfvl. with BOMB 
Quantum AT hard drive. $3199.00 

GVP A3033-4MB/0 

33 MHz 68030/68882,4 MB 32-blt RAM. without hard 
drive. S3 199.00 

GVP A3033-4MB/40Q 

33 MHz 68030/6SB82, 4 MB 32-bit RAM, with 40MB 

Quantum AT herd drive. $3699.00 

GVP A3033-4MB/aOQ 

33 MHz 68030/68882, 4 MB 32-bit RAM. with 80MB 

Quantum AT hard drive. S3999.00 

GVP A3050-4MB/0 

50 MHz 68030/68882 , 4 M B 32-bit RAM, without hard 
drive. S4399.00 

GVP A30SO-4MB/40Q 

50 MHz 68030/68882. 4 MS 32-blt RAM, with 40MB 
Quantum AT hard drive. S4899.00 

GVP A3050-4M6/eOQ 

50 MHz 68030/68882, 4 MB 32-blt RAM, with 80MB 

Quantum AT hard drive. 55 1 99.00 

The rmpact accelerators from GVP offer 
the following as standard options along with the 
factory installed 68030/68882 processors: 

•4 MB of 32-bit nibble mode DRAM— 

supports up to 8 MB on board, (which 

allows full support of the 68030 burst 

mode). 
•Built-in autobooting hard disk 

controller (with data transfer rates over 

700KB/sec.). 
•Asynchronous design to improve 

genlock compatibility. 
•Zero slot solution (the processor, the 

DRAM, and the hard disk controller use 

only one slot — the coprocessor slot). 

Options include your choice of 28MHe, 33MHz, 
and 50MHz processors, as well as a 40MB/80MB 
(11 ms w/64K read-ahead cache) Quantum hard 
drive. 



10 Amazing Computing V5. 7 ®1990 



100,000 Satisfied Customers 

NOW EVEN LOWER PRICES!!! 



MEMORY 



M50I A500 
Starboard 1MB 
Starboard 2MB 
8-UP with 2MB 
8-UP with 4MB 
8-UP with 6MB 
8-UP with 8MB 



289.9.'^ 
399.95 
2H9.9.'i 
449.95 
599.95 
749.95 





HARD DRIVES | 




GVP Hardcard /() 


1 59.95 




GVP A2000-2/0 


179.95 




GVP A2O0O-8/() 


199.95 




HardFrame 


219.95 




Hardcard 40MB 


499.95 




Hardcard 80MB 


699,95 




Hardcard 105MB 


799.95 




Quantum Pro 40 


379.95 




Quantum Pro 80 


649.95 




Qunatuni Pro 105 


699.95 




Supra 105/1000 


1099.95 




Supra 105/500 


999,95 




Supra 40/ 1000 


683.95 




Supra 40/500 


599.95 




Supra 80/1000 


949.95 




Supra 80/500 


875.95 




Supra Wordsync 


169,95 



System Packages 

We customize AMIGA 2000 and 
AMIGA 3000 desktop video 
sy.stems to meet your individual 
needs. Call and talk to one of our 
system specialists to get the best 
price for your requirements. 



(.«i\r^>iij!i mi 


1* 


28MH/6«(»3() 
28 MH/. 68882 


33 MHz 68030 
33 MH/ 68882 


with 4 MB ol 

32 bit memory 

1949.95 


with 4 MB of 

32 bit memory 

2549.95 


with 40 MB hata drive 
2399.95 


with 40 MB hard drive 
2899.95 


with 80 MB hara drive 
2699.95 


with 80 MB hard drive 
3199.95 



VIDEO 




Flicker Fixer 


469.95 


Framcbuffer with 1MB 


749.95 


Magni 4004S 




with remote 


1629.95 


MiniGen 


189.95 


Panasonic 1410 


209.95 


Panasonic 1500 


299.95 


Panasonic Vari-Lens 


39.95 


Polaroid Freezeframe 


1599.95 


ProGen 


349.95 


Sharp JX- 100 


749.95 


SuperGen 


669.95 


SuperGen 2000 


1699.95 





k 


SOFTWARE 1 


Deluxe Paint III 


89.95 


Digi Paint 


64.95 


Digi View 4.0 


129.95 


Digi Works 3D 


79.95 


Diskmanager MAC 


79.95 


Homcbuiidcr's CAD 


119.95 


Lattice ++ 


249.95 


Pagcslrcam 2.0 


179.95 


Prowrite 3.0 


99.95 


Saxon Publisher 


249.95 


SoundScape Pro MIDI 


109.95 


Turbo Silver 


109.95 


CALL FOR UNLISTED TITLES ■ 



FDATA-10 
99.95 



FDATA-20 
239.95 



HP PAINTJET 
1099.95 



Government and School Piirclui.sc Orders Accepted. 



Circle 114 on Reader Service card. 



LP InterComputing, Inc. 1-800-622-9177 

H ^HiB 2100NHwy .^60. Suite 2 101. Dallas. TX 75050- 10 15 Customer Service: 214-988-3500 



InterComputing Deutschland Inc. 

Schdnbecker Sir. 55-57 Telefon: 0202/89155 

5600 WuppertaI-2 Telefon: 0202/89304 



InterComputing France 

34, Avenue des Champs Elysees Phone: 

75008 Paris FAX: 



(1)42821603 
(1)42806649 



Ai iiUiiys lie Imre llie mosl ' customer fr if itdh' ifrim. SiH $4.95 in loitt. USA; $30.0U min. order ; MASTERCARD & VISA will NO tredil 
card fee: in Te.xas add 7% Salen Ta.x. SI 2. 00 .\hippiii)! lo APO/FPO addresses. RMAS required on all reitirns. .-Ml prices siihjerf to change. 



VISA 



A Look at CSA's Mega-Midget Racer 



AT PRESS TIMli, Wl: KECEI\'ED /\N 
interestini; accelerator product from Compuitr 
Sysleins Assotiiiles. Inc., (.CSAJ — tlie Megii- 
Midget Riicer. Tlic first tiling noticeable about 
tills accelemtor is that it doesn't plug into the 
coprocessor slot In an A2000. Instead, the Mega - 
Midget lUtcer pltigs into the 68000 processor 
socket in an A20od or A500. The replaced 680O0 
is resockctt'd on the Mega-Mid}4el Iticer, while 
tile processor is software-selectable. 100% 
coiTipalibilif\' is toasted by using the on-board 
680O0. 

You could call the Mega-Midget Racer the 
'What You Want is What Yoii Get' accelerator. 
Tlie basic Mega-Niidget Kacer comes without a 
processor, ^'01,1 can choose frotii options which 



include a 68030 njnnlng at 20, 25, or 33 MHz. 
Also optional is a 68881/68882 math 
coprocessor, which can be clocked by eitherthe 
processor's CP U or even a second faster one (up 
to 5OMH2). Finally, for you speed demons, an 
optional higii-speed 32-bit, 512K SRAM bank is 
available. Tlie Amiga ROM Kernel is copied into 
and e.xecuted out of this high-speed, 32-bit 
S!if\A4, This is sure to li\'en up a sluggish Amiga. 
It is often said tliai you get what you pay 
for. With the Mega-Midget Iticer's low price, 
that statement goes right out tlie window! The 
engineering put into this product is 
commendable, including tlie notable use of 
surface-mount technology to enhance 
reliabilit)'. This preliminary examination of tlie 
.\ lega-.Midget Racer proves it to be an interesting 



entry- into the A2000 accelerator market . It offers 
all of the basic features that users want of an 
accelerator, at an unheard of low price. You'll be 
hearing more about the Mega-Midget Racer, 
botli from Amazing Conipiitiiig. and the many 
Siitisfied customers. — EPVjr 

Mega-Mldget ffocer without Processor: S675.00 
Mega-Midget Race? with 20-MHz 68030: S795.0O 
Mego-Midget Racer with 25-MHz 68030: S89S,00 
Mego-Midget Racer with 33-MHz 68030: S 1 095.00 

Computer Systems Associates. Inc. (CSA) 

7564 Trode Street 

San Diego. CA 92121 

Phone:(619)566-3911 

FAX (619) 566-0531 

Inquiry # 334 



Next, let's lake a look at the Imtronics' 
Hurricane series of accelerators for the Amiga 
2000: 

Hutricane 2300-OKB 

28 MHz 68030/68882, 0KB 32-blt DRAM. 

SI 195.00 

Hurricane 2B0O-4MB 

28 MHz 68030/68862, 4MB 32-bit DRAM. 
SI 995.00 

Hurricane 2BOO-4MB/40Q 

28 MHz 6S030/68882, 4MB 32-bit DRAM, 40MB 
Quantum SCSI hard drive. 52495,00 

Hurricane 2800-4MB/aOQ 

28 MHz 6S030/6S882. 4MB 32-bit DRAM, 80MB 
Quantum SCSI hard drive. S2595.0O 

Hurricane 2S50-0KB 

50 MHz 68030/68882. 0KB 32-b!t DRAM. 
S3295.00 

Hurricane 2S50-4MB 

50 MHz 68030/68882. 4MB 32-bit DRAM. 
S3995.00 

Hurricane 2a50-4MB/40Q 

50 MH2 68030/63882, 4MB 32-bit DRAM, 40MB 
Quantum SCSI hard drive. S4495.00 

Hurricane 2350-4MB/aOQ 

50 MHz 68030/688S2, 4MB 32-Drt DRAM, 80MB 
Quantum SCSI hard drive. S4595.00 

The Hurricane accelerators from Imtron- 
ics offer t!ie following as siancbrd options along 
witli the factory-installed 68030/68882 proces- 
sors: 

• 1 to 16MB 32-bil DRAM (Upgradable 
in 1MB increments if using 256K x 'i 
chips or 4MB increments using IM .x 4 
chips). 

•■Fast' 750KB/sec SCSI hard disk 
controller on-board. Optional 
upgrade to the new and faster SCSI II 
standard is available. 

•Asynchronous design to improve 
genlock compatibility. 



> Zero slot solution (the proce,s,sor, tlie 
DRA.M. and the hard disk controller 

use only one slot — tlie coprocessor 
slot). 



Finally lets take a look at the A2630 board 
from Commodore-Amiga. 

A2630 

25 MHz 68030/68862. 2 MB 32-bit HAM. 
S2 195.00 

The only feature tlie A2630 offers as standard 
options along wiili factory-installed 68030/ 
68382 processors is the 2MB 32-bit memorv-. 
This is expandable to 4MB using standard ZIP 
t>'pe DRAMS. 

INSTALLATION & DOCUMENTATION 

Inourjjreliminary testing, we have found 
aU accelerators to work effecti\'ely — once tiiey 
were installed. The technicians who test and 
write accelerator anicles all too often forget that 
the average power u.ser (for example, an artist 
who need.s ray-tracing power) is not all that 
technically moliv;iied. He readsanarticle which 
Siiys that the iastallation is a simple matter of in- 
serting a card. He can handle iliat. so he pulls 
out his tru.sty credit card and orders. When the 
package arrives he zealously rips apan the 
packaging, eager to use his newly Ixiuglit 
power. However, he quickly finds himself widi 
a manual filled with technical terms, ;in accel- 
erator atrd with El>ROM-S that ha\'e to be in- 
stalled, not to mention the endle.ss jumpers that 
have to be set. And tlien there's the software. All 
this can be \'ery .scary for a non-Sechnical per- 
son, and will often result in costly calls to the ac- 
celerator company's technical support line. 

This is not always tlie c:i.se, but too often 
it is. We often forget how important good 
documentation, and tech support is, especially 
witli products that you are paying thousands of 
dollars for. Then there is tlie fact that .some of the 
configurations that you can buy don't come 
prepared or prea.ssembled. You could probably 
put it together with a good manual, but too often 



tlie manual is insufficient for an average user. 
Once again, this might not botlier the techno- 
phile, but it would frighten tlie average user 
(altliough, sometimes even technophiles are 
frightened at these packages and manuals). 

Tlie point is not that the product is bad 
because you may ha\'e a hard time assembling 
it, but maybe you shotild purchase it from a 
dealer and ha\'e him install it (he'll also be there 
to support you if you run into any compatibility 
problems later). 

Finally, there is tlie software and liard- 
ware compaiibilitj' problem. For the most part, 
most software will ain with the Amiga in tlie 
68O3O mode. Tlie reajority that won't will run in 
tile 680O0 mode. However, there is some soft- 
ware and some interface hardware that won't 
run with .some accelerators. It's not \-ery satisfy- 
ing to buy an accelerator and then find that it 
won't work with your I'as'orite program. You 
would be well advised to contact tlie tnanufac- 
tu rer at»ut any softwa re & hardware incompati- 
bilities. 

With all this in mind, let's take a closer 
look at these accelerator packages: 

THE GVP IMPACT ACCELERATORS 

We were plea.santly surprised upon 
opening the bo.Kes for llie CV? Impact boards. 
The GVT Impact accelerators without hard 
drives come preassembled. and pre-jumpered. 
The installation is flawless; just plug tlie board 
into the coprocessor slot and turn tlie machine 
on — that is, in most cases. In rare cases, the 
board is improperly jumpered, or a jumper 
might come loose in transit. However, a quick 
call to the helpful people at G\T' tech support 
line can easily resolve this minor problem. 

('Note! I/your A 2000 molherhoard is one of the 
first German-made m otharboanis (4 kiyur), you 
are going to have to reinoveyoiir6S000from the 
motherboard, regardless of tvbicb board you 
tise.Vjvi is not asimpletask considering that the 
68000 is situated under the power supply/disk 
drire. Most Amigas shouldn't need this, hut be 
forewarned.) 

(continued on page 95) 



12 Amazing Cotnpu ling V5. 7 ©1990 



Order Toll Free Xlontpai(ftbLLLtu Order Toll Free 

800-558-0003 ^oaSm^tjiuct'contc, 800-558-0003 



M! Mk* «u6 J1 .» 

*a«ir««u!, Tl» _.... IH.45 

Mk BumK 30.K 

UbouTMRjngH 2t.16 

Umj B«nt »« 

Artra^ ST.K 

AijLBnut 25.K 

AKNpdigiia , a.K 

AAc C Dfwtopir VS.O... I77.9S 

»*cCPti>VJ.O_ I19.85 

BAD «,« 

OAT. 31. « 

BakinolPoinrigw 30.es 

BvA«m ZB.H 

Ban «id PIfa 1QQ.B5 

Baitubn II M.K 

BarATihll 38.H 

BMiran „._..._._._^..2S.« 
Blrmr Sht eonlSctaDl . 21 .«S 

tint ChBH 29.85 

Battliltowlnigc 31.95 

BiM tfiiOraa 2i-«S 

■■Oniinivatni 31.95 

BagmcltTTaCrHkliK. .30.95 

BJiKBin* 30.95 

(BTTMla f ro)Kt 24.95 

Siyoid Di!li Caitfe 22.95 

eWiof MllHDdvy 21.95 

BMimjl ....2S.9S 

BIlnAHIill 30.95 

Boing- llM Stnw 24.95 

BfikiBlnto 25.95 

BrUgi 0.0 2S.95 

BniKJcaat TUv CUL 

Butohan ZS.95 

Cui Do 84.95 

Cumwi Siitf^ptaeh „. 30.95 
Cham'Sd-Mut Pileslna ..3a.«5 

Champions tA Kryim 31 .95 

etpoi 24.» 

ChtMmnter 2100 31 .95 

Chronoqi»tll 30.95 

Cki; ^..;^.._,.^..J4.55 



CodBrBma; locnwi —.37.95 

Colonaf I B«)U*9l 37.95 

Con* Sam _ „5«.B 

Con* Alt PWII (nclil „.. 20.95 

ConquBl o< CameW 37.95 

Craaluin 24.95 

Crl>bao< XhQ'Ski King ...25.95 

Crtw* Pdi ^ 19.95 

Ctn« rt tto Azure Bondi . 2! 95 

OpJ*! . -.+.,...„..........30.95 

OB (*jn 187.95 

Dart C««ny ..2«,9S 

[Hyol IhB Vlpw 30.95 

DMth Brinoef 25.95 

DaliDS MiBlcCon9trL0_81.95 

MmsPahlBI .94.95 

Detua nxnll!: 94.05 

tMun Prir4 II 51.95 

Mm Pioduclbra 12B.95 

MuaVUaolll 94.95 

D«aignaaaim0 ...^ ..-. 30.65 

B^knita 3 24 95 

DSIpairO.O ... 84.95 

DlgMew Sou 121.95 

DInDsau tHnomy Ktt 2S.9S 

Dm HaSw 2S.95 

omanl 8iit 41.95 

Qoi 2 Da 30.95 

OouHaDtvinll . 24.95 

DouMtDltlUl 23.K 

DraganFm* ...„......^..^,,31.9S 

Dragon'! Lttr ._ 33.96 

Dragon'f Ltir B 43.95 

Dutpmor Ratna........ 25-95 

DnttJlHI 38.95 

D.U.D.E. 29.95 

Difrgwn Master 24.96 

Earl Wum BaiaOall 31 .95 

Ban Pflr1ein«( 35,05 

Empln 31.95 

ExcftlanH I Meg 158.95 

EyaolHjUB 23.SS 

F-16 ComOit Plot .,31. 



^^^^^^^ AMIGA SOFT 

F-19>laamin|X<ar CM.U UilBu* . 

FAn8 Inlamiilar 31 .95 Labttt 8iA Uny 

Fabon .. _. ^...._.._. 31 .95 Lifetrt Slit Uny II or II 

OparaltonCoyrt«7ftfl».. 18.95 Ule and Death , 

Fal Tradti _. ....34.« list 5 Lilxl 

Ftdcrdlon 31.95 LoghMorti 

HIgtl Simtlalm II 30.96 Uwn 

Floorptan Cor^i. Bat 30.95 Lords of IJia FValng 8tii 

ftjols Enand 31 .96 LonS o( War 

FuBireWan... .».»5 M2*m^ia 

flurlW II _30.95 M2 Am^ja Dabifloar 

B««Nl Klan 41 .95 Mjgtc ktisaa 1 Mag ., 

Stand Pill Cliiiil 27,96 Manhunlat- NY a 8f _ 

BuisHp 34.95 Manlic Mansion 

HalU 01 MoitBZufta 23.96 MiltiHaster Plus 

Haidballll 30.95 MitHi Marautera 

Hatmo™^ .. — 27,95 Wavli Saaoon Typing .. 

HntWax .30,95 MijIptaS 

Menu Diast , 37-95 Mkio Ffcln FHir PUja , 

HlWar _31.9S Mkaolugua Wiaating 

HoctayLaaguaamUor .21.95 WklRacSlidb V1.1 . 

Hound at Shadow 25.95 Wl;^ and Magt II .. 

Hofla Boot ol Samn 21.96 ModeletSD 

tl It Mows StnX Itl 19-65 MofKpoly 

lm(»rtini 25.95 kknfe 4!et»r 

Indhna Joiv>teDDn 6att»2S.96 Music Uoi^a .. ,..„, 

Inlhna Jonn-9tap<)lc AdY.a).K Mujic X _... 

li^ntaBon 24.e Heticnnnctr 

IrtioCad 48.95 Nf« f oit WaiTlo»-t h 

Imvlobn • 174.95 mn Fona 

Iron Lurd ..„ 25.95 Nlghl Hirtar _ 

Island 01 ton Hope 23.95 HurlHiWar 

It Came From Pia [Jasafl. 31.95 Omaga ^......... 

Dill (Xsli 14.95 Onailptw Basatxl: 6 on 

Jact NIcHiias Son 30.95 Dnaiipby Horaa Raokig 

Joan <* Art „„ 2J.65 On LH Pttkinn 

Kamplgmppa ..37.95 OrtrBtrn 

Katatonb Hudlnsal or 2 44.95 Opsrallon Wol 

KeyW- Conlwl Hvi L3 ....21te5 Paga Banderar 3-0 

Klrtg'sauestl^,or3 30.95 PagvSeDar2 

KlnffsQuDsta 37.95 PageSlraam 

Krtgtts ot Lagond 30.95 Pagafllpoar PlusJFX ..„, 

KrbtatTT« 31,95 Panreretrtka . 



WARE I 

..24.95 PanPal . 



.25 95 
.37,95 



.37,95 
.31.95 



., 31 ,05 
.30.95 



84.95 

Paralan Bui Man» ...24-06 

PImaiAO 94,96 

..31.95 Pinion PaM 2.0 87.95 

.30.95 PbMagfc 57.96 

184.95 PkllMl 28.95 

ollual.. 24.95 

0ml 1.- 30 95 

.24,95 Polba Quasi II , 37 95 

147,95 Pool 01 RaittKa 31.95 

,77,95 Populoua 32,05 

PowarWWmnlS 54,05 

Powantnnv 25,95 

... 28.05 Pltm UasUt Plia 24,95 

_..30.05 Pro Motion ..51.95 

... 21-96 ProTannb Ton !5,«5 

31.95 PnsVUaoaoU 139.95 

... 14795 fort P«llta 5995 

..114,95 ProVHooPnat 189,95 

24-95 ProWnta 3-0 .- - 9405 

...39.95 ProFontslofl... 21.95 

...37.95 Prafaailonal Draw 112.95 

„. 82,96 PrdBsalanil UlkrT 9ra ' 24 OS 

...24.95 Pralasslonit Paga ...187.95 

._ 5«.gs Pro^ D> Baeki« 30.95 

.^ «.g5 Pnneiaor Uana ol Zoa . 24.95 

_ 189.95 rtttf'lSKi 23.95 

23.95 PiEzM Stotytml ...25.95 

sg 30.05 QianarBKli 42.95 

,.-. 28.16 ltan*a III 22.05 

2S.9S Ranvaga 24.95 

....30.95 Ftaw Copy 34.95 

... 30-95 IM atorm nWv . 3405 

i 30.95 Raregada.- 22.96 

... 30.95 RUrmk^ Nglatmk 25.96 

58.95 MckDangatous 21 .95 

.37.96 Pbk Oa¥ls Socoai 1 Mag . 30.95 
, 22 96 ntiga el UaHut 28.95 

,. 94,»S Rbk 24.95 

. 74.95 BoOocop 28.95 

110.95 Rochat Hangar 31.95 

, 87.95 Ron«npa/T1rat Wngdoma *4,« 
Strng tterairalor 24.95 



MASTER 3A-1 

$109* 

Includes FREB DELIVERY 

to Itie contiguiajs 48 states 



IVS Trumpcard Hard Drive 
Packages for A2000 Series 



Quantum P'°°'^^^^ 



40 Meg SCSI Pro Drive 369 

80 Meg SCSI Pro Drive 599 

100 Meg SCSI Pro Drive 679 



Trumpcard 500 Hard Drive 
Packages for Amiga 500 



BcraMila .,, 24,« 

8ai>14aPI<lhiin ...-. 87 OS 

BaiVkam-OulvBpKi ..22,05 

BItadow 01 »a Baaal 31.95 

Bliark Attack 24.95 

Btn/Hapudi Ctfa 24,06 

«kn <% 30.95 

Tatialn Ed. _.__ 14.95 

Bbata or Dk „ 26.05 

BmDoBtTahar >.. 26.95 

Solbra Itiyal 19.95 

BpaoaAoa _. 34.95 

epi» Hartiar 30.95 

BpKa Qinsl 1 or 2 30.05 

Bpaea Otasl 3 ^^»^„ 37.05 

tpaix Bogm 30.95 

Star FUjM 31.95 

8br Tnk: Ttia Fhal FroM. 34.05 

Oalar Cruaada 38.95 

BkjfTTi Aerwa Curtjpa .....37.96 

anal Bod __- _.31.95 

ewta la 30.95 

SlHpPokaill 23.05 

8tirt Tract _. 21.95 

8t^it3oran - .. . .28 05 

BuKr Blar Baskilbal . CM.L 

8t4«rtHs«Panaiui 48.96 

8u(#rt>as« Personal 2 ..... 87.95 

Si4»il»i«Pio 3 KO-OS 

8u(iart4fca Blmiialor 30.96 

8tv*rplan 87.96 

SwDRla d Afa(pn 25.96 

»K!r« d T»«blt 31 .05 

T.V. StmwVZO 84.05 

TV- Stwrtj B*»ka(t)ill 31. « 

T.V. Sports FootlHl 31 .85 

Targlun 24.95 

TaiBraali2.0 ..48.96 

Taanaga MutaH Tuilka ..23.96 

Tatjil 20-96 

TastDrlv>2-T1iaDl>l ...,»-06 

CalClHlonge 15.95 

apaan tatalanoa 15.95 



Musda or Stttwr Cars -. 15.95 

T1»It Hwat Hm S7.05 

Tlikitor 57.9! 

TUkdOoiltCT 30.05 

Tliaidor Blada . 29.» 

Tigar Cub „„,„„„60.0S 

Times ollora 24.0S 

Tractan Ikjast ...... 21.96 

Traaaura Trip ........... 24.05 

Tnjnxxanl Disk Mgr (0 95 

Ttmnla 01 Aim^jaiUoii -.36,95 

Tuf&o Out Ftiii 31 ,96 

Tinto SItwr 3.0 1 Mag .. 1 12.95 

TVTia.... 84.95 

TVTaaPRJhnbnrt 99,65 

ryphionolBtaal 31.95 

lyplDonTbonvaon 30,95 

UUni tit 24.99 

Ultna IV 38.0S 

Wkna V 38.06 

um Diakgn 21B.M 

UitKanlfltB 57,05 

IHvatM J 31.06 

Vat» 30.95 

VMaoEfladaS-T 113.05 

VktooTfflai V1.S K.95 

VUooBcapaSD 122.96 

vha-mmii „„„„™ 12105 

Izkt Racovitlon 109.96 

VoBaa 24.96 

War In taddk Eadh 30.tS 

War 01 tt« Unit ,.25.05 

Wakdoo ._ n.95 

IVayna SreHty Itekay 30.tS 

*hM Dnams 24.(5 

WaltHs 20.95 

WlBam Tall „„„. 25.05 

Wind Water a,0S 

Wings 31,96 

W1tx)soIFiay 24.96 

Wortoipla1inun.Tlw 18T.95 

INorkJAOas 35.95 

Workl Cbsi Laadar Bd 28.95 



'XETEC Fast Card + 

HardDrlvmnxkagmt loiAmlga2000 



Seagate 

(ri-138« 409 DEL 

8T-157II-1....479DEL 

ST-ITTN 530 DEL 

8T-Z77N-1 509 DEL 

ST-298N 639 DEL 



Quantum 
Pro Drives 

40 k4EG SCSI ... 520 DEI 
«0 MEG SCSI .,.740 Da 
lOOMEGSCa, S30Da 



masaUta Inckjda IVS Tnanpcird SCSI tiinl ditw ctit 
calila, aollwan and FflEE d*llaaiY In tha»ralguiiis 
tUA TNs h not anassinta^ U I II Is i packaga. 



Hard Drive Cards-A2000 



Seagate 



Quantum 
Pro Drives 



Seagate 

S1-13flN 4WOOI 

31-167N,| .,.62<)Dol 
S1-177N 680 Ool 



Seagate 



Quantum 
Pro Drives 



ST-I25H 400 DEL 

8T-I38H CO DEL 40MEG SCSI ,. S49 DEL 

ST.I57N-1 409DEL 8DMEG SCSI .. 760 DEI 

ST-ITTN 559 DEL lOOFJEG SCSI .SSODa 

thna nrda Inckrda IVS Trunvcard cirtr, nwuNk^ brkt, 
cbt softwara. and FREE datlswylnttxcoialguotfl USA 



Supnman' 2000 



Memory Boards -A2000 

2 MB $Z6B Dal e MB S569 Dal 

4MB WfiOal 8MB J71BDal 

IncluiJes mEE DELIVERY 

to ItiB cor^tlgucijl 43 atatoa 



FLICKER FIXER 
$379* 

• FREE DELIVERY 

in thie contiguous 48 states 



SI-1MN..„ ^WD&I -iOMgSCa ...5WDa 

SI-I67N-1 5«DeI SOMg 9Ca ...fl39Da 

SI-I77N..„ «ODel lOOMgSCa .WSDa 

Thua Pidao*9 Inducto Trumpuid 500 enebstre, IVS 
Trmipcaid .flCSI W *lw «rt. Softwin t Iiw delfvwy fr 
Ihe contlQuom USA 

Trumpcad (00 Sorf Expand*t ovol ot **- 
Oiak * 1 MtO ■ 2 ME9 ■ 4 MEQ 



PRINTERS 



Panasonic 

KX-P1124 $285 
KX-P 1624 $369 

Panasonic 1 lao 165 

Pani3sonic 1191 239 



Quantum 
Pro Drives 

JOMogSCa 5WDO) 

^.?S^.,:::^D^ 100M«s3CSI...670I>,. 

Cord t*«#u^M X*tB£'l DWAa Ikr], (uhibDiM ROM.ar^ 
ccN^iOch:u^ . 2& pFi SCSlciorrv, clUi. uHAnt nroruc' 

FMi WUVIRY IN THt COWItcsUOUs Al HaHS 



XETEC Fast Card System 

Ham Drtva Pcackogao (w Amiga SOO 



^bmr^ 



NX 1000 NX 1000 

Multifont 2 Rainbow 

$155 $189 



star XB 2410 429 



Seagate 



Quantum 
5r.i3«N....6i90oi Pro Drives 

SI-157N.I ...68»Dol 40MoaSC3 ..... 739DI1I 

SI-177N„_..74»Oel BOMcgSCSl 079 Do! 

SI277bH .„7l9Di)l IOOM»g 9251 .. 1045 D»l 
SI,2«*I ..... 749 Do! 



retE DtUVtSV IN tHI COMtKWOtts 48 STATES 




Seagate 



SUPER 
SALE 



ST-1Z5N 20 Meg -SCSI 23S 

ST.13SN 30 Mag -SCSI 2S5 

ST-157N 49 Mag - SCSI ...„ 295 

ST-157N-1 49Mag -JBtna 31B 

ST-177N 60M»g-SCSI 379 

ST-225N 20 Mag - SCSI 255 

ST-277N-1 60 Mag - SCSI 345 

ST-Z96N BO Mag - SCSI 379 

ST-109eNeOMao-24mi 43i 



I INFQRMATLON 

414-357-8181 FAX 414-357-7814 
P.O. BOX 178SZ MllwaukBe, WJ 53217 
jj^l^^l^ H0UR8-C8T MDH-FHI9ain-giiin.gAT 11iin-S»ni 



VIDEO PACKAGE 

PANASONIC] 410 CAMERA 



VIJrllJJIJI:JI.4 



COPYSTATJD WITH LIGHTS 
DIGIVIEW GOLD 4.0 

$419 DELIVERED! 



VIDTECHVl"fl 
jSCANLOCir''^^- 



MISCELLANEOUS 



Perfect S ound $69 

Color Spllttor $119 

Mlgrapti Hand Scannsr ,..$319 

Sharp JX 100 Color Scanner $759 

Cordless Mouse $99 

GI-500 OptoMech Mouse $49 

GI-1000 Fully Optical Moose $85 

GfHVls Mouse Stick $85 

Supra 2400ZI lnt(A2000) $139 

Supra nm 500 $79 

Mega MMget Racer 25 mg $669 

Supercard $75 

ICD AD RAM 520 OK $99 

HC/0 SCSI Host Adaptor $159 

Ami Gen $9S 

Super Gen $659 

Super Gen 2000S CALL 

Supra WordSync Controller $139 



goldenIMAGE' 
RAM 500 

1/2 Meg Exp. Bd ,■ -- 
iW/Clock/Catendar 

*_« 



NO CREDfTCARO SURCHARGE 



CALL US TODAY! 

AMIGA, 



BUDniMH^ ff^lffTi**" l:■%•(:^«t••r, *•■«:■■->* ■^'^«r'rTi3iwj,erdi(.hrtMaltC«TVil;tMoaila« 14 
htfia^fry*!aekv.lc»wr.a.*Mc:''4 CDH dary*! vi |4J» |i CsKkwrtillXA. hd«9i|4iZl Ivitffwi 
crOc^m^CCt.-i; lcifi.-fliini n-'"i:nl5IE. MM*ra-St.ntfi« crt*l pMMtioudiiaid / •iqnilsndt.ll!!! 
tieitllDth Wi i'M«Hr[itMp«lncb!l«m.*H!u.Hi.AK.fPaAr>aP-ffrt:ranu(ICMC3knBitlWT.pMHK:dn 
mOCiftj. ptNPKvMffi.MlDthtF lml^««»n«M1t%rt*H'4.ahniJB:AIgn»ntfit>pK] onhmUH CnSHEU 
UJAli* i*bM fVit d*i h«iirid U.Ek mil VTar«l^rtttvk^gc^■J^)M■JC•■3 trdfTTHTrvmirmnl jrai afl baciwgiC 
haidJIiantlwTUvmArgiMOitvMifi.'^diYii}* «;|c^ ••tin.-t)'. W«i9an{jtiiiAtir>immUF^ ftvinton N.DEi*t3 
Dvr li^ prCMumjMfAiV^l Wi &«ta«iM nknn mil tan ■ ntoi i kfflw P w ■Hta*. C^r(414)357'i:it ta otth 

iipt> mvndiW* Wn»rpp»liiM!i»T>ann>|]»sbtow.i>pgKwnwtfti>iilhtitFyiniawfiihcir>*itt'ff»JTinu>tttfnr. 



Circle 117 on Reader Service card. 




compiled by E.G. Fedorzyn 



PUTTING THINGS 
IN PERSPECTIVE 

For tliose looking to 
back up their words witli 
something of substance, 
Mindware International 
might he able to offer some 
assistance . The company's 
new program, 3D Text 
Animator, allows for the 
creation of 3D text animations 
in tlie ANIM format. 

In this veritable 3D text 
"construction kit", users can., 
dirough a simple point-ancl- 
click interface, enter a text 
string, select a font, resolution, 
colors, light direction and in- 
tensity, and animation pattern. 
Frames for the text animation 
will then be generated accord- 
ing to the patiem chosen. 
Users can mix and match pat- 
terns for 3D animation in three 



categories: text animating into 
the display, animating out of 
tlie display, and animating at 
tlie center of tlie display. Re- 
sulting ANIMs can be easily 
appended using the program's 
ANIM Cut-and Pa.ste featiires. 

With 3D Text Animator, 
3D fonts from otlier programs 
such as Sculpt, Turbo, or 
Videoscape may be imported. 
The program also allows any 
Amiga 2D bitmapped font to 
be converted to 3D, enabling it 
to then be used as a font for 3D 
text animation. The provided 
3D Font Editor enables these 
converted fonts to be 
"smoothed" prior to usage. 

Results achieved may be 
genlocked over a video 
source, or overlaid on a back- 
ground using external tools. 

3D Text Animator, 1MB 
of RAM required. Price: 
$49-95, Mindware Intema- 
tional, 110 Dunlop W., P.O. 
Box 22158, Banie, Ontario, 
Canada L4M5R3, (705) 737- 
5998. Inquiry *320 



THE MOVERS 
& THE FLICKERS 

MicroWay has an- 
nounced the release of DEB 
2000, their Denise Extender 
Board for the A2000 and 2500. 
The board allows Micro'Way's 
flickerFLxer, the graphic en- 
hancer for tlie A2000 and 2500, 
to be run in die .\miga witliout 
utilizing the video slot, 
tliereby leaving the slot free 
for other devices such as inter- 
nal genlocks and frame buff- 
ers. 

DEB 2000 transfers the 
\'ideo signals required by the 
flickerFLxer from the Denise 
socket on the Amiga mother- 
board to the DEB connector 
board. The flickerFIxer is dien 
positioned behind the existing 
XT slots and connected to t!ie 
DEB 2000 via a cable. 

Also, MicroWay has re- 
duced the retail price of the 
JlickerFixer from $595.00 to 
S495.00. JlickerFixer is com- 
patible with AmigaDOS 2.0 
and the Enhanced Chip Set 
from Commodore. 

DEB 2000, Price: 
$75.00, MicroWay, P.O. Box 
79, Kingston, MA, 02364, 
(508) 746- 7341 . Inquiry #322 



14 Amaziug Computing V5. 7 ©1990 



MISSION: 
ACCOMPLISHED 

lucasFilms has released 
the Amiga version of tlieir 
newest flight simulator/ 
strategy game, Their Finest 
Hour. Based on the exploits 
of the early days of WWII, diis 
game provides both the 
Luftwaffe and the RAF 
perspective to some of the 
most daring dogfights of any 
war. With over 52 possible 
missions and a contingent of 
eight different aircraft, Amiga 
flight jockeys can now eidier 
defend die mighty shores of 
Great Britain or prepare die 
isles for die German invasion 
campaign, Operation Sea Lion. 

From the same people 
who developed BattleHawks 



1942, Their Finest Hour 
combines cockpit realism with 
a variety of missions and 
antagonists to produce a game 
both entertaining and 
informative. Operation aircraft 
can be British fighters, German 
fighters, or German bomber 
planes — each plane has its 
own independent 

characteristics and requires a 
different style of combat. Each 
level of combat is more 
difficult, and repeated 
successful completions of 
missions are rewarded widi 
medals or promotions. 
Characters can be developed 
to advance dirough the ranks. 
As a final touch, LucasFilms 
has once again supplied an 
excellent manual which delves 




into the history and the 
people of the time, and 
provides enough in the way 
of detailed aerial techniques 
to inspire any good Amiga air 
warrior. 



Their Finest Hour, Price: 
S 59.95, produced by LucasFilms 
Games, distributed by Electronic 
Arts, 1820 Galeivay Drive, San 
Mateo, CA 94404, (800) 245- 
4525. Inquiry ff324 



PICTURE THIS 

From the folks who 
brought you Doug's Math 
Aquarium now comes 
MathVision, a new math and 
scientific vi.sualization pro- 
gram. 

Seven Seas Software's 
latest release features data in- 
put/graphics output, HAM, 
overscan, half-brite, ARexx 
support, image processing, 
IEEE library with math 
coprocessor support, and 
hooks to access external pro- 
grams. According to Seven 
Seas President Otto Smith, the 



program "offers an entire 
panorama of gadgets, controls 
and ftmctions for visualiza- 
tion. The power of the pro- 
gram has far exceeded [Seven 
Seas'] original expectations." 

Registered users of 
Doug's Math Aquarium may 
purchase MathVisionzl a spe- 
cial upgrade price. 

MathVision, Price: 
$197.00, Upgrade price: 
$30.00, Seven Seas Software, 
P.O. Box 1451, Port 
Townsend, WA 98368, (206) 
385-1956. Inquiry ^323 




DIAMONDS ARE FOREVER 

Time to don the ol' cleats 
and slap a big wad o' bubble 
gum in your mouth (just a 
pinch between your cheek 
and gum), and get set for some 
hardball. Accolade-style. 

New from Accolade is 
Hardball //, a sequel to 
Hardball/, their popular 
baseball simulation originally 
released in 1985. The 
company has reportedly acted 
on users' comments and 
requests stemming from the 
original game to produce this 
new and improved baseball 
simulation. 

In Hardball II, you 
assume the role of team 
manager, supervising the 
players and controlling their 
on-screen performance, 
including batting order, line- 
ups, substitutions, and 
position swaps. You can select 
teams from the pre- 
programmed library available, 
or use the Team Editor to 
either create new players witli 
dieir own stats or to enter .stats 
from real-life professional 



players. The Team Editor also 
lets you mis and match players 
and teams. Statistics are 
automatically updated at the 
end of each play to give you 
the same cutting edge as the 
Lasordas and Morgans of the 
baseball world. 

But before you start 
kicking dirt in the umpire's 
face, you might want to first 
review any controversial calls 
with Hardball IPs Instant 
Replay option. Other 
enhanced features include the 
choice of six simulated major 
league stadiums including 
Boston, Kansas City, and 
Toronto, as well as the choice 
of five different field views 
including upper deck 
overview, behind the plate, 
and right and left infield. The 
game's complexity is set by 
sixteen different options, so 
anyone from Little Leaguer to 
veteran can take a swing. 

Hardball II, Price: 
$49.95, Accolade, 550 South 
Winchester Boulevard, Suite 
200, San Jose, CA 95128, 
(408) 985-1 700. Inquiry #321 



Amazing Computing V5. 7 ©1990 15 



1 . Drink from the Fountain of Youtln. 

2. Receive a perfect 4-star rating 
on "Star Search". 

3. Read every issue of Amazing 
Computing ever published. 



* We've just made your fife's goals one easier. 

No doubt you have over the years compiled a list of goals you hope to achieve. And certainly Amazing Computing 

holds prominent position on that list. Thot's why we've made it that much easier for you to acquire the complete 

Amazing library at terrific savings. For a limited time, you may purchase volume sets of AC at 

a savings of over 50%! 



AC Volume 1 is now available for just . 

$19.95'! 

(A regular S45.00 value, this first year of AC 
includes 9 info-packed Issues.) 

AC Volumes 2, 3, & 4 are now yours for just 

$29.95* each!. 

CVolumes 2, 3, & 4 Include 12 issues each and 
regularly sell for $60.00 per volume set.) 



PLUS! We're now offering subscribers 
freely redistributable disks' * at distribution 
prices. Now's the time to complete your 
Fred Fish, Amicus, or AC disk collection. 
Pricing for subscribers Is as follows: 

1 to 9 disks: $6.00 each 
10 to 49 disks; $5,00 each 
50 to 99 disks: $4.00 each 
100 disks or more: $3.00 each 

(Disks ore $7.00 each for non-subscribers.) 



To order volume sets, freely redistributable disks, as well as single issues, use your Visa or MasterCard and 

call 1-800-345-3360. 

Or just fill out the order form insert in this issue. 



Amazing Computing and freely redistributable software— at savings 
;. . beyond your wildest dreams. 



•PosLijjy K h;indlin>; fur L■adl•^■l>Kl^K• is s i.lX) in iIil- I'S. s".* for MiifjLV in t^^in.id.i .iihI MvNito. ;inii .siO.Wi fur ;ili OUicr foivifyi .■.urlaiv. 
"AC \\;irr;(niiL-,'v ;ill disli^ fur 911 i.l;ivv. Nn :iildiii<iri:il cliii^L- fur poMiiHf :i!i<.i li:i:xllin}i un di>li i inii.-r>.. AC isscK-s Mr. Fn.'d Fish :i nnnlty rin all 
disk -Silks t(i LTitTJurigf llif liMiiinjj Ainij{:i prti.nram ;inili(ilf>rilM id cdtuirmi.- lib tiursliinilins wiirl;, 



GETTING HITCHED 

Next monrh, Interworks 
will begin offering the ENLAN 
Network System, a DECnet net- 
working system for tlie Amiga. A 
compatible implementation of 
DECnet protocols (defined by die 
Digital Equipment Corporation), 
the s)'stem provides the ability' to 
excliange files and data with DEC 
VAXA'MS computers, other Ami- 
gas, and machines running the 
DECnet protocol. 

Among its features, the Inter- 
works system provides a File Copy 
Utility, File Directory Utility, File 
Delete System, and File Access Lis- 
tener program. The system's Net- 
work Virtual Terminal facility al- 
lows multiple, simultaneaous log- 
in sessions to one or more remote 
VAXA'MS systems. With this facil- 
ity, most temiinal emulator pro- 
grams can be used with ENLAN. 
(Interworks supplies a VTIOO ter- 
minal emulator program with the 
package.) 

The ENLAN Network System 
supports both thick and thin-wire 
Etliernet on die A2000 and higher 
machines, and asynchronous 
DECnet on all Amiga models using 
the serial port. The system also has 
the capacity for dial -out and dial-in 
operation via modem. 

Versions of the ENLAN Net- 
work System start at S 295. 00 

imeru-orks, 193 E. Main 
Street, Suite 230, Milford, MA 
01757, (508) 476-3893- Inquiry 
*^325 



AN INTEGRAL PART 

Integral Systems Co. has an- 
nounced the release of a new se- 
ries of Amiga products that will 
support the video professional. 
VidControl and MasterControl 
are the first two programs to be 
released as part of the Ohio-based 
company's video production inte- 
gration package. 

VidControl provides the ca- 
pability to control any Amiga 
application via a signal applied 
through GamePort ^l. Basically, 
any application that normally ac- 
cepts keyboard input may be 
managed using the VidControl 
program. Among its features are 
support for user-defmable re- 
sponse to input signal, as well as 
variable time delays between the 
input event and the passing of the 
message to the application. 

MasterControl provides all 
the capabilities of VidControl, but 
will accept six discrete inputs from 
the gameport, as opposed to the 
one used by VidControl. 

VidControl: $30.00; Master- 
Control: S50.00. Integral Systems, 
P.O. Box 31626, Dayton, OH 
45431, (513) 237-8290. Inquiry 
#335 

CORRECTION! 

Last month in "New Products" 
CV5.6), it was reported that 
MicroTouch Systems' Amiga 
ToucbDriver was the first touch 
screen to provide a two-button 
mouse emulation touch screen for 
the Amiga. It has come to our 
attention that Future Touch Inc., 
a joint venture of Amigo Business 




sfteM 



for AMIGA 
Version 2.1: Mixed text styles! 
Images in documents! Colors! 
Enhanced Interface! CLI access! 

"Will certainly whet a lot of 
HypcrAppeliies " 

Neil RandaU, 
Amigaworld 1/90 

"Its flexibility far 
exceeds any other 
program that I've used 
on any computer ." 

Robert Klimaszewski, 

Amazing V5.1 THINKER 

Write, design, plan. MuUimedia Idea 
Processor with HyperText! ARexx 

Upgrades Version 2.1 

l.X -> 2.1 $25 
2.0 -> 2.1 $10 

Poor Person Software 
3721 Starr King Circle, Dept 
Palo Alto, CA 94306 
(415)-493-7234 




$80 



circle 125 on Reader Service card. 

Computers and Business 
Technology Services, has been 
marketing a two-button mouse 
emulation touch screen for the 
Amiga since June of 1987. 

Our apologies to Future 
Touch, Inc. and to our readers for 
this error in reporting. For more 
information on Future Touch 
systems, contact Future Touch, 
Inc., 192 Laurel Road, East 
Northport, NY 11731, (516) 757- 
7334. Inquiry *326 







Budokan 


Heat Wave 






Price: $4^.95 


Price: $44.95 






Electronic Ads 


Accolade 






1820 Gateway Drive 


50 South Winchester Boulevard, Suite 200 




H 


San Mateo. CA 94404 


San Jose. CA 95128 


iijr„„ n„. 


id cte 


(BOO) 246-4525 


(408) 985-1 700 


Other m 


Inqviiy 4Z27 


Inquiry ^329 


n • 1 




European Challenge 


Shyx 


KADAIirAfI 




Price: S2195 


Price: $34.95 


IlKllKllHU 




Accolade 


Pygnosis 


*WV vv* w vw 




50 South Winchester BouiBvard 


122 Centur/ Buildings. Tower Street 






Suite 200 


Srtjnsw/ck Business Park 






San Jose. CA 95128 


Liverpool. England L3 48J 






(408)985-1700 


(051) 709-5755 






Inquiry *328 


Inquiry *330 



Amazing Computing V5. 7 ©1990 17 



Senses "Working Overtime: 



PIXOUND 2.1 



by R. Shamms Mortier 



I SUFFER UNDER THE VELVET whip 
of two muses, music and visual art. With 
that conscious bondage in mind ! pur- 
chased an Amiga, in the hopes that both 
addictions could be at least addressed if not 
totally satisfied. I have never been sorry, 
except when I realize that I get about half 
of the sleep that non-Amigans do. There 
has been a missing ingredient though, and 
it's one that I have even fantasized writing 
a program for when I retired from present 
tasks. It is the ability of the Amiga to 
actually "play" \'isual screens, interpreting 
tlie visual information into music by filter- 
ing it through some exclusive algorithm. 
But alas, someone has beat me to the 
punch! That "someone" refers the creative 



folks at Hologramophone, so that at a cost 
of about SIOO.OO (U.S.), you can now 
"hear" what your eyes 
are seeing with 
PKound. The Amiga 
can now "play" visual 
screens, and direct the 
output to iMIDI synths. 
For decades, experi- 
mental composers 
have been %vriting" 
music by using color 
and graphic symbols, 
and asking musicians 
to interpret the results. 
This software makes 
you the composer, and 



Straight key assignments of 
th0 PtXound keymap 



■SCMW 




NoniKil 

Keyboard 



Serious Jammin': 



HYPERCHORD 



by Howard Bassen 



ALL MUSICIANS OCCASIONALLY 
get stuck in creative mts, limited by their 
habits, skills and style. At times like these, 
they tend to fall back on their favorite riffs 
subconsciously when jamming or compos- 




HyperctiOfd's Mode Maker 



ing. Hyperchord — a new algorithmic com- 
poser/dynamic riff sequencer from Holo- 
gramophone Research — allows you to 
stretch the limits of your own musical abil- 
ity and break new musical ground, through 
the creation, storage and manipula- 
tion of riffs in real time. 

THE LOOK AND FEEL 

All of the design screens and menus 
are rendered in a very low-resolution 
graphics mode, probably to save chip 
memory space. The vertical axis rep- 
resents the musical scale, or pitch, 
while the horizontal axis represents 
time. Notes can be "drawn" or entered 
on the grid manually, or they can be 
generated automatically from two 
menu-selectable "grab bags" each 
putting 30 short, fairly unconventional 
sequences or riffs in selectable mem- 
ory locations or "riff banks". Unlike 



most Amiga music software, there are no 
"demo" songs (other than the grab bags 
that can be run to show off the full capabili- 
ties of die program). 

CREATING AND EDITING RIFFS 

In the Draw mode, notes are entered 
"freehand", either as a line between two 
points, or on tlie grid with the mouse. As 
you move the mouse up and down, letters 
flash along the left side of the screen, indi- 
cating the notes located along each verdcal 
axis of the grid. You hear the pitch of each 
note as you move the mouse. A feature 
lacking here is a piano keyboard gadget 
that displays the note(s) being selected. 
The text message "A*" accompanied by the 
sound of the note just doesn't register in my 
mind as well as the sight of a key being 
selected on a piano keyboard might. 

In experimenting with Hyperchord, I 
entered patterns in the Draw mode , and set 



18 Amazing Computing V5. 7 ©1990 



the Amiga/MIDI connection Uie orchestra. 
YoLi can either ask the computer to play a 
graphic screen, or you can involve your 
own sensibilities to intervene in tlie making 
of the music (by taking control of the move- 
ments of tlie mouse). 

If you desire, you can create your 
own graphics screens in 32 color lo-res, 
translate them into a format that PKound 
can "read" (with an on-board module), and 
tlien sit back and watch/listen to tlie results. 
There is a long list of graphics screens 
already configured and stored on die disk 
for instant gratification. The visual designs 
are based upon both die hue and intensity 
of color, because it is these parameters that 
PKound uses to translate visual infonna- 
tion into sound. The principle is simple, but 
the results are truly amazing. To add to your 
musical joy, the whole keyboard is mapped 
out with different ways tliat you can inter- 
act (in real time) with the music. My abso- 
lute favorite is that the function keys are 
dedicated to certain scalar patterns (aug- 
mented scales, Major/Minor scales, modes, 
and other patterns) that automatically 
remap the visual so that it responds to color 
and outputs dedicated scale patterns. The 
interaction is limitless, and will definiteh' 
promote an inter-disciplinary attiaide in 



the arts. Musicians will be investigating 
color and \fisual form, and visual artists will 
be experimenting with the amplitude and 
wa^-eform possibilities of their paintings. 
When you hear the partially controlled 
partially random results through a good 
MIDI device, you wiU surrender tlie few 
hours of sleep that the Amiga has left you 
with. And if, like me, you are both a visual 
and musical addict, PKound will have you 
walking in the Seventh Heaven. 

HOW IT DO THE MAGIC IT DO 

To begin, PKound advertises itself as 
a "MIDI musical art interpreter". I use it in 
conjtmction with the "Midia Musicbox", 
and also with my Casio-1000 synthesizer. 
You can have it playback Amiga sounds 
alone however, if you don't have a MIDI 
device. But since there's no way to load in 
your own Amiga samples, you'll have to 
settle for the rather bland samples on 
board. 

There's a whole host of new Amiga 
videographic ware that addresses creati\1ty 
in a fashion similar to PKound. All of it 
except PKound, however, works with 
graphics, not sound. The basic process is to 
use the Amiga keyboard as a macro con- 
\-erter, so that by depressing a key or a 



combination of keys, you can cause a 
defined action to take place. Witli Elan's 
"Perfomier", this defined action is the 
appearance of a still or an animation that 
you have loaded previously. With 
PIXound, it is a manipulation of the Amiga 
soundchip or a .MIDI command sent to a 
synth or soundbox. PKound 1.0 was a 
rather enjoyable but simplistic affair. It was 
easy to "play" tlie picture before you be- 
cause the commands were limited. After a 
cursory reading of tlie manual, you were 
anxiety free and on your own. PKound 2. 1 
has a myriad of additional options, and the 
"cost" is a longer study of the manual in 
order to become even quasi-familiar with 
expected results. PIXound 1.0 was a nice 
toy. PIXound 2.1 has professional and 
performance applications. 

There are really three keyboard maps 
diat have to be referenced, as I have 
attempted to show in my illustrations: The 
first is a general mapping of the standard 
keyboard keys, the second shows applica- 
tions addressed by Shift/Key funaions, and 
the third is a roadmap of more complex 
Alternate and Amiga-key combinations. 
There are far too many options to rely on 
extemporaneous playing around. Either 
you will work widi the manual in front of 



the loop mode gadget to "on" to hear the 
sequences (riffs) thus created. I found tliat 
■when a single note on the grid is changed 
the music stops, necessitating a restart for 
tlie modified riff to contintie. This makes 
interactiV'C editing harder than in the unin- 
terrupted, continuous looping mode used 
in "M" and some other sequencers. Con- 
tinuous looping lets the user hear the effect 
of changing a single note immediately. 

Editing notes in Hyperchord's Design 
Screen grid requires concentrated effort 
and precise aim. Clicking anywhere but 
exactly in the center of the tiny squares 
given may change or erase notes in the 
column to the left of tliose truly wanted. 

In contrast to the manual editing 
mode with its weaknesses mentioned 
above, Hyperchord's automatic pattern- 
generating and modifying feaaires are the 
most full-featured of any music program 
that I have seen. There are gadgets on the 
screen that let you smear, rotate, random- 
ize, mLx, and otherp,'!se process tlie entire 
pattern on die design screen, or any se- 
lected .set of neighboring notes. 

But before "massaging" a newly-cre- 
ated riff, it is important to hear exactly how 



it sounds. The length can be changed by 
dragging a section selector to choose any 
number of adjacent notes, so only those 
notes of the riff will play when the spacebar 
is depressed to begin. Once a pattern or riff 
is finished, it can be saved in die "riff bank" 
as one of 30 preset riffs that are accessible 
from the Amiga keyboard. Store riffs by 
simply clicking the mouse-pointer on a 
separate letter of the replica of the Amiga 
keyboard displayed at the bottom left of the 
design screen. 

PREVIEWING RIFFS 

To preview the riffs that I created, I 
used the internal sound capabilities of tlie 
Amiga. The only internal voice diat appears 
to be available on the single disk Uiat 
conies with the software package is a 
default sound like that of a piano. 

However, several odier default 
sounds are provided as simple wavefonns. 
These are available from a menu-selectable 
^'indow called "Voice Group". This win- 
dow provides a choice of sine, square and 
Uriangular waves for the internal Amiga 
voices. No explanation of this feature is 
provided in the sparse documentation that 



comes with the software. 

Also, unlike most music programs, 
die "instruments" drawer is empty. The riffs 
I previewed tended to sound somewhat 
flat, due to the single piano timbre. The 
other internal voices (sine, square, and tri- 
angular) made my riffs sound rather ab- 
stract, like "electronic music" beeps pro- 
duced by earlier home computers. I won- 
dered whether a good assortment of inter- 
nal Amiga sounds (instruments) would im- 
prove the quality of the riffs. 

I tried several Amiga IFF Instruments 
from other programs (replacing the piano 
timbre as voice 10 in the voice group 
window), The manual shows the release 
(decay) times of die internal Amiga instru- 
ments to be controllable by the backslash 
key on die Amiga keyboard. However, I 
could not change this parameternoticeably 
Willi any Hyperchord controls, so I was not 
able to give the internal voices an echo- 
like, sustained quality with long decay 
times. This and other types of "envelope 
control" are nearly-standard features found 
in most Amiga music programs. 

You can attempt to spice up your riffs 
by using any of the 52 rhythms selectable at 



Amazing Computing V5. 7 ©1990 19 



you, or you will be forced to do a bit of 
planning and practicing beforehand (you'll 
probably do both). The ordinary' keys are 
comfortably assigned in a logical first-let- 
ter-of-a-command manner. There is little 
logic left when you use the more compli- 
cated muhi-keystroke operations. 

THE BEGINNING 

The first thing you'll want to do when 
the program is on screen is to toggle MIDI 
to "on" if you have a MIDI device tliat will 
actually produce the sound. You may be 
more comfortable accessing some of the 
commands from the TitleBar menus at the 
start, and substituting (he keyboard equiva- 
lents as you learn and remember them. 
There are several ways a picture may be 
"played", either interactively or by com- 
puter randomness. At the start, you will no 
doubt be focusing upon the pictures that 
are included (some are generation pro- 
grams that create moving images). In no 
time at all though (especially if you study 
the included graphics and tlieir sound 
capacities) you'll be experimenting with 
your o^\'n visuals as well. Whichever wa\' 
you choose to have the screen sound out 
the data, you can also record die musical 
pattern and replay it later (nice for record- 



ing direct to a tape player). The entire - 
pattern can also be saved as a sequence and 
potted to other software (Dr. T's is men- 
tioned as an example, which means you 
could also print it out with Dr. T's "Copy- 
ist"). Screens can also be saved to disk, and 
loaded in later. 

OPTIONS GALORE 

When it comes to applications soft- 
ware, many of us approach it as we do 
gaming programs,. .i.e., if it only does a 
couple of things (no matter how well), we 
soon cast it in a dark comer and move on 
to something else. Given that obsen'ation, 
i'DCound will always be in tiie light, as the 
options are almost infinite. I'm not going to 
attempt to delineate everyone here, tliat 
would take too mucli space. But I will 
touch upon the generalities so that you can 
appreciate tlie complexity and variability of 
this creation. 

MIDI users can address output chan- 
nels and patch bays, so the various harmo- 
nies can travel on a chosen path to a 
specific sound. No reason you couldn't also 
address otlier MIDI devices like drum 
machines, lights, and anything else tliat can 
be driven by MIDI signals. Not only do 
colors relate to sounds, but various satura- 



tions of color also manipulate the audible 
signal. Pastels, for instance, actually sound 
"lighter", while areas of muddy color sound 
dark and foreboding. Think of what you 
can record to videotape in this fashion. 
Another way to vary the playback is to 
color cycle the picture, which will cause the 
sound to speed up as the colors rush by the 
blitter that senses them. Colors in the pal- 
ette can actually be "tuned", allowing you 
to assign various musical attributes to each 
of them! Harmonies and lUiythms can also 
be assigned and altered. 

There are two functions in PDCound 
2. 1 tliat are really mind boggling in terms of 
allowing you to integrate your own art 
work. The first, GR.\B SCREEN, imports tlie 
art from your paint program as it runs in the 
background and dumps it onto die 
PKound screen. I used it with Electronic 
Arts DPaintin and it worked fine. The 
second option is also useful, albeit a bit 
strange. O'VERlA'i' SCREEN imports your 
own art screen and blends it wiili tlie 
PEXound screen already visible, thereby 
abstracting in surprising ways both the 
vi.sual and the attendant sound. The self 
explanatory' LOAD PIX loads a previously 
saved IFF graphic from disk. 



the bottom of the design screen. This adds 
a new dimension to your riffs, bu t given just 
tlie single instrument voice a^'aitable with 
die internal sounds, die results are not 
great. Harmony is available (see the discus- 
sion below) but only with the simple sine, 
square, and triangular waveforms as voices 
two and three. It would be much nicer to 
have a drum sound along widi the other 
single internal IFF instrument voice; to get 
this effect, you must switch to tlie use of tlie 
MIDI outputs of Hyf>erchord. 

To get a richer sound during my 
trials, I selected "MIDI" from tlie menu and 
listened to the same sequences through my 
lOO-watt stereo system. The sounds of Uie 
notes were brief in duration or even stac- 
cato when I played a riffat a fast tempo. M)- 
experience with the internal Amiga sounds 
was repeated for MIDI sounds. There are 
no controls in this program to alter tlie 
release or sustain of notes, unlike other 
algoritlimic composition programs I have 
tried. 

You can adjust the parameter settings 
on the synthesizer's voices (by editing the 
patch's release parameters), but this is 
awkward and not under computer control. 



I used an external analog delay effect 
device to "stretch" the sounds, but this 
added more hardware to my setup, and 
prevented computer control of die voices. 

THE PLAY SCREEN 

The Play Screen allows real-time 
control of volume (velocity') and tempo 
through movement of a set of crosshair 
lines in the "Vector Play" window vertically 
and horizontally. The Play Screen also 
allows real-time control of many other 
parameters. This screen allows instantane- 
ous selection of mode, rhythm, octave, 
transposition, and type of harmony. New 
modes and rhythms can be selected as riffs 
piay, giving tlie program a good, interaaive 
means for trying, modifj'ing, and fine- 
tuning a basic riff in real time, witliout 
interrupting tlie flow of music. This allows 
you to get a set of sounds that best suits 
your preference. 

A problem with the mode and 
rhythm selection gadgets becomes appar- 
ent when you trj' to create a specific set of 
modes and patterns. Available modes are 
represented only as small unnamed 
squares in a large grid of identical squares. 



There is no way to label the mode or 
rhythm associated with each box. It would 
help to ha\'e a scrolling menu to select 
specific modes and rhydims; or, the boxes 
could be color-coded or labelled with let- 
ters to give the user points of reference. 

Other gadgets in the play mode 
screen allow the user to select several 
unique and somewhat mysterious effects 
witii the mouse. While I could find no 
explanations for "superchords", "hyper- 
chords" , and "holistic modes" in the accom- 
panying documentation, itwas easy to hear 
the difference dial each effea made on a 
riff. The holistic mode, for example, creates 
progressions diat cycle riffs tlirough several 
key changes, the keys deriving from notes 
included in the riffs. 

Tlie supertrill is anodier interesting 
effect, and when used with MIDI drum 
voices even gives you the capability' to per- 
form good drum rolls effortlessly. For con- 
ventional instrument voices like a flute, I 
don't think a supertrill sounds quite the 
same as the ones that a skilled musician 
would play, but diis may just be a matter of 
learning to "play" Hyperchord. 



20 Amazing Computing V5 .7 ©1990 



PIXound always lets yon know 
where you're at by giving you echoed data 
on the TitleBar (Pitch. Scale, Octave, 
Patches, Sustain toggle, and Cycle toggle). 
This is not only good, it's vital. Without it, 
and because of tlie way that the resident 
options can complicate matters rather 
quickly, tliere's no way you could remem- 
ber what you did to get where you are. 
Basically, the "F" keys at the top of your 
keyboard determine specific modes and 
scales, from Major/Minor to more esoteric 
choices (''Gypsy" and ''Wliole-Tone" 
scales). I miss having a "Blues" scale op- 
tion, but maybe that's planned for another 
revision. The Delete key can be toggled to 
begin and end the recording of a sequence. 
From diere, it can be sa\'ed to disk. 

COLOR TRANSFORMA JJONS 

Since PIXound "plays" your visuals 
from an assignment of sjxjcific note quali- 
ties to on-screen colors, it makes sense that 
there should be global ways to alter die 
colors, tiiereby giving you even more op- 
tions in tlie audio playback. PIXound al- 
lows you to change from one system pal- 
ette to another (it has eight varieties), or 
you can create your own palette. Colors 
can be cj'cled in any of five ways, and each 



produces a different harmonic result. The 
"S" key initiates multi-cycling. Colors can 
also be reversed and inverted, and the 
background color can be operated on 
.separately. 

CONCLUSION 

Have I told you everything? No. Have 
I attempted to give you a basic idea con- 
cerning FLxound's main features, and am I 
all but guaranteeing you that you will get 
more then your money's worth from this 
program? Yes, Yes, Yes! If you are a lover 
of Amiga generated music, a dabbler in 
acoustics, an audio scientist, a musical 
hack, a MIDI enthusiast, a mad scientist, an 
Amiga visual artist, a just-for-fun kind of 
person, an adult, a kid, or a seasoned 
professional musician, buy this program 
now. If you are none of the above — buy it 
anyway. 

•AC* 

PIXound 

Hologramophone Research 

6225 SW 145 Street 

Miami FL 33) 58 

(305)252-2661 

Price: $99.00 

Inquiry *2U 



HARMONY AND POLYPHONIC, 
POL YRHYTHMIC RIFFS 

Two- and three-part hannonies are 
easy to generate when playing riffs from 
tlie play screen. WhUe only one "melody" 
or riff can be played at a time, the original 
note of the riff can be accompanied by one 
or two copies of the riff, playing in sync 
with tlie first riff, but transposed by selected 
intervals (for example, a fifth and a sev- 
enth). Harmony \'oices can be assigned dif- 
ferent MIDI voices, using different MIDI 
channels and selecting tliem with the 
mouse. Different internal Amiga voices, 
howe\'er, can't be played simultaneously. 

I attempted to get more than one 
pattern or riff to play at the same time. What 
I sought was a way of creating, playing and 
storing a rhythm line or sequence that was 
in sync, yet distinct from a melody line. For 
example, other algorithmic music jiro- 
grams can play one seciuence as a rhythm 
track using drum voices, while a second se- 
quence plays a different ("polyrhydimic") 
pattern as a bass line, and a third and fourth 
riff as the lead or melody, using other 
voices. With Hyperchord, the only poly- 
phonic mode available is die harmony 



effect. In this mode only one pattern plays, 
but several different voices can play this 
pattern simultaneously. The limited po- 
lyphony Uiat Hyperchord can produce is 
able to generate some interesting effects. 

Hologramophone people at 
AmiExpo suggested that I run Hyperchord 
twice in order to get true polyphonic, 
polyrhyihmic riffs. After die program was 
running nomially, I hit die escape (ESC) 
key to invoke the "multitasking" option of 
Hyperchord. Then I went to the work- 
bench screen and clicked on the Hyper- 
chord icon so another copy of the program 
ran on its own screen. With xsko programs 
limning simultaneously I played internal 
Amiga sounds only widi one program, and 
MIDI only with the second. Tliis attempt at 
polyphonic playing proved to be awkward, 
since tlie tempos of the two programs were 
not in .sync. Flipping from one screen to the 
otlier was too clumsy to be of much \'alue. 
I soon abandoned this multitasking mode 
and tried another approach for polyphonic 
playing. 

A "legitimate" way to get true 2-part 
polyphonic, polyrhytlimic performances 
from Hyperchord without any 'tricks' is 



provided on tlie Play mode screen, A "Play- 
Along" tool provides a com'enient and 
interesting means for playing a lead or mel- 
ody line witli tlie mouse. A \'ertical column 
of iitde boxes is on the right side of tlie 
vector play area. The column of boxes 
represents scales of notes covering several 
octaves. Use the mouse pointer to play 
notes under complete manual control (as to 
both the duration and pitch notes). The 
melody generated with the play-along tool 
is improvisational, yet easy to keep in key 
and in sync witii die beat. 

Using the "swing" tempo, a penta- 
tonic or minor seventh mode, and an 
acoustic bass plus the drum set from my 
Korg Symphony module, I created a solid 
jazz rhythm section. For a lead or melody I 
added two layered, detuned jazz guitar 
patches on MIDI channel 5 from my Korg 
module. This voice was controlled with the 
play- along tool, letting me create a real- 
time, improvised, syncopated '■modem 
jazz" piece that sounded realistic and solid. 
Before using Hyperchord I had never pro- 
duced a satisfj'ing jazz riff, even using the 
other Amiga music programs. 

CAPTURING RIFFS & PERFORM- 
ANCES AS STANDARD MUSIC FILES 

A performance could be composed 
by changing riffs in standard progressions 
of key changes, melodies modes, tempos, 
etc. Full performances could be " captured" 
as an S.vnjS or a MIDI file in Dr. Ts KCS 
sequencer format. This was easily accom- 
plished by selecting the "record" mode 
witli a single keystroke. I tried this and was 
able to import a hyperchord performance 
into Deluxe Music construction Set using 
the S.MUS format. Unfortunately, the mel- 
ody from the play-along tool was not 
captured as an SMUS or MIDI file when the 
program's "record" mode was switched on. 
This caused the loss of some of the best 
parts of my perfonnances (tiie improvised 
melody line). A riff with one voice could be 
obtained as a standard MIDI file, using a 
freely redistribtitable utility that was on 
several bulletin board systems. This utility 
con^'erted a single track sa\'ed in Dr. T's 
KCS format to standard MIDI format. Wiiile 
somewhat inconvenient, this did at least 
allow me to get one of the features I feel is 
mandatory for today's music composition 
software - recording a performance in stan- 
dard MIDI format. 

EXTRA FEATURES 

The design and play screens have a 
multitude of additional features, like con- 
tinuous play modes, inversion, compres- 



Amazing Computing V5. 7 ©1990 21 



sion/expand, MIDI patch selection, etc. 
These allow more fine tuning of riffs, but 
take time to learn and understand. Most of 
these features are described briefly in the 
program's documentation. 

UTILITY PROGRAMS 

Several interesting educational/utLl- 
it>' programs are on the Hyperchord disk. 
The Mode Maker and Rliythm iMaker pro- 
grams nm separate from Hyperchord, but 
produce files that can be loaded into 
Hyperchord later. The Mode Maker allows 
creation of new modes or scales in an 
interesting, interactive manner. Graphic 
images of a set of organ pipes and other 
objects are presented in thiis utility. They 
change to the proper relative lengths when 
changes to the mode parameters are en- 
tered on the screen. This gives the program 
an intuitive feel which is great for learning 
music theory, but less effective for algo- 
rithinic composition. The Mode Maker 
program is not able lo multitask with 
Hyperchord Ctlie computer locked up 
when both were run at the same time). 

The m'o programs complement each 
other as follows: create a new mode with 
Mode Maker (at tliis point you can hear it 
only as an internal Amiga organ voice). 
Then save the mode, terminate Mode 
Maker, and am Hyperchord. Finally, load 
the newly-created mode into Hyperchord 
to hear its effect on a panicular riff. 

Unfortunately, this is just too awk- 
ward for interactive composition, unless 
you create a batch of new modes with the 
Mode Maker program and store them on a 
disk. You can then quit Mode Maker, run 
Hyperchord, and tr^' each of your new 
modes, switching from one to the other in 
real time using the Mode grid feature of 
Hyperchord. This lets you hear and com- 
pare how each of these new modes effects 
the overall sound of a riff, interactively. 

RHYTHMMAKER 

The rhytfim maker is another utility, 
this one allowing the creation and storage 
of completely new, customized rhythm 
patterns for later use with Hyperchord riffs. 
Using this program, a snare drum sound is 
generated as an internal Amiga voice form- 
ing the basic note or 'beat'. Up to 16 beats 
can be seleaed to form a 'rhyihm' cycle' or 
sequence. The process of composing a 
ne'^\' rh\thm is done with the mouse, first by 
selecting the number of notes in the pat- 
tern, and tlien assigning a value (duration) 
to each of the notes. The length of the 
pattern is chosen by sliding a blue bar 
above the "rh\Thm grid". This grid is almost 



identical to the one at the bottom ot tlie 
Hyperchord screen. After choosing the 
pattern's length, the default value for each 
note can be changed. Changing a note's 
value is done by selecting it and then 
clicking tlie mouse with its pointer posi- 
tioned in one of the small boxes that forms 
the top row of the rhythm grid on the 
screen. For example, the first beat couid 
have its value set as an eighth note, fol- 
lowed by a second beat set equal to a 
dotted sixteenth note. 

When creating a rhythm, a pattern of 
vertical bars appears over each beat, hav- 
ing a width proportional to the beat's value 
or duration. Also, the duration of the cur- 
rent beat's delay is shown as a text value on 
the screen. The small boxes that are used to 
select the ^'alue are unnamed and all have 
the same color. This makes choosing a 
specific value difficult, except by trial-and- 
error. In addition to tliis problem, another 
flaw exists. Again, clicking in a tiny box is 
difficult to do widiout accidentally choos- 
ing the box immediately below the one you 
wanted to select. If tliis happens, the entire 
pattern that you have generated is instandy 
erased. Since there is no "undo" button, 
there is no way to recover your work. I 

CUSTOMER SUPPORT GRADE: A + 

When I first got Hyperchord 1 fotmd 
numerous serious bugs in it. This was ver- 
sion 1.1. I called the phone number listed 
on the registration card for technical sup- 
port and left a message on an answering 
machine. To my surprise, witliin a few 
hours I got a return call — not to mention 
lots of helpful advice from one of the 
program's authors. He told me that all of the 
serious bugs were corrected in version 
1.15, and then answered all of my ques- 
tions thoroughly. I recei^'ed an upgrade 
free of charge soon after sending my origi- 
nal disk to tiim. He asked my opinion of the 
program and toid me of upcoming im- 
provements to the program, plus additional 
documentation that was being prepared, 
including a tutorial. A second call a few 
weeks later received a similar rapid re- 
sponse. Hologramophone dearly provides 
some of the best customer support in tlie 
Amiga market. 

OVERALL IMPRESSIONS 

Hyperchord and its accompanying 
utilities include a variety of features not 
available in any other Amiga music pro- 
grams that I know of. Advantages it holds 
o\-er other programs include the widest 
range of selectable modes and scales, plus 
the ability to create and store customized 



modes. Hyperchord easily produces riffs 
that no otlier program can, -witliout the aid 
of one who is well-trained in advanced 
music tlieory. The program therefore is an 
excellent music theory instructional aid. 
The riffs tliat can be produced are not easily 
edited to generate scores for existing popu- 
lar or "standard" songs. That is not the 
purpose of the program. Ratlier, if you are 
open to new ideas and experimentation, 
Hyperchord helps you create riffs of virtu- 
ally limitless scope and st)'le. 

Unlike most other Amiga music soft- 
ware, tlie program is not copy protected in 
any way, so the user does not have to go 
through awkward startup procedures like 
looking up words in the manual or remov- 
ing die program disk and inserting a key 
disk. In addition, the latest version avail- 
able at die time tliis was written (version 
1.15) is virtually free of bugs to lock up, 
crash, or ruin work that you ha\-e spent 
hours creating. 

Weaknesses in die package include a 
few minor bugsand problems with the user 
interface. Entering notes with the mouse is 
more difficult than in odier music compo- 
sition programs. The documentation is 
presendy too brief (31 pages) and no index 
is provided. Further, some of die diagrams 
in the mantia! are labelled witli symbols 
that do not correspond to die text that 
references tliem. A summary' sheet, card or 
on-line help screen should be provided to 
aid users. This would be helpful even after 
learning the myriad features of Hyper- 
chord, especially since diere are too few 
menu items to allow selection of these 
features. More MIDI controls should be 
provided for operating keyboards and 
MIDI sound modules. 

In general, Hyperchord is worth 
adding to your existing music software 
collection. I cannot say that this is definitely 
die first algorithmic composition program 
you should buy, since other available pro- 
grams may have different features of 
greater significance to you. If you want to 
learn intermediate and ad\^anced music 
Uieory and apply it to the music that you 
compose, this program is probably your 
best choice. 



•AC- 



Mypeichord 

Hologramophone Research 

6225 SW 145 Street 

Miami FL 33 158 

(305)252-2661 

Price: $159.00 

Inquiry #2 12 



22 Amazing Computing V3.7 ©1990 



by a. Bradley Andrews 



WHERE IN EUROPE IS 
CARMEN SANDIEGO? 

First this nionch is Where in Eu- 
rope is Carmen Sanciiego?, by Broder- 
bund. This game comliines etements 
of detecti^'e work wiUi knowledge of 
European countries for an interesting 
gaming experience. U is the third in 
Broderbund's "Where is Carmen San- 
diego?" series, iDut tlie first ported lo 
die Amiga (diat I know of). 

The player takes tlie role of a 
new detective of die ACiME Detective 
Agency starting at the rank of Gum- 
shoe. The goal is to find and capture 
members of Carmen's gang in re- 
sponse to dieir current crimes in Eu- 
rope, and thereby advance up the 
ranks in the agency. From one to four 
solved cases are required to advance 
each level. Super Sleutli status is tlie 
highest and only happens after die 
player captures Carmen herself. Game 
play is fairly simple. Each case begins 
with a call from the chief, explaining 
the known details of die crime and the 
sex of die thief. Some are plausible, 
such as a stolen gem, but others are 
ver}' wack^', including stolten moun- 
tajntops and geysers. 

It is then up to you to follow their 
path back to the curi'cnt hideout, a 
path that will cake yovi through seveial 
different countries. At somewhat ran- 



dom times during )'our pursuit, the 
chief -will fill you iuTvidi newly discov- 
ered details about the thief, including 
hair color, eye color, their favorite 
book, and even dieir favorite movie. 
These are important since several 
characteristics are required to 
uniquely identify the proper gang 
member. 

I'roper identification is neces- 
sary to issue a v,'arrant for their arrest. 
Without die proper warrant, die cap- 
aired thief will be foundnot guilty and 
released from custody. 

Two tools are provided to help 
you in tracking your target. The game 
package includes a small size Rand 
McNally Adas of Europe and an on- 
screen "computer" is available to iden- 
tify countries by flag color, monetary 
unit, and language. One of the game's 
mai'or claims to fame is its ability to 
make learning geographical and re- 
lated facts fun. Just by playing the 
game and chasing the thieves, any 
player will gain a bit more knowledge 
about the European continent. 

As a game die program is mod- 
erately enjoyable. It can be interesdng 
for the first several pursuits, but ex- 
tended play can become a bit boring, 
since the basic mechanics are die same 
for all play, I was disappointed to find 
I had to recapture the same crook 



several crimes later, after they were 
supposedly put away "for a long time". 
The graphics look sharp and clear, and 
many humorous actions are animated 
with api^ropriate sound effects. The 
still frame views that accompany each 
city location have nicely drawn images 
representative of the activities each 
city is famous for. 

On the whole diis is actually a 
fun game and I would higlily recom- 
mend it to anyone who would like to 
learn a bit more about European geog- 
raphy. As long as you don't expect 
somediing to match the latest Sierra 
adventure, you should have a good 
time. 

THIRD COURIER 

Third Courier is probably the last 
Cold War game we will see, at least for 
a while. This game, from Accolade, 
puts the player in the role of the master 
spy Moondancer as he attempts to re- 
cover stolen NATO defense plans and 
bring the traitor who cau.sed their loss 
to jusdce. 

Third Courier is a graphical role- 
playing game -with a similar layout to 
Uninvited and Shadowgate. The 
player can move around the discreet 
areas of die cides of East and West 
Berlin in an attempt to accomplish the 
quest. You begin in a small flat rented 



Brodetbvnd's Caimen Sandlego European style 



Accolade's Third Courier 



jJwiJj-Id 



CRIME NOTES 


SEX; 


i ef td le 


HAIR: 


Red 


EYES: 


Blue 


MOVIE 


Ulestern 


BOOK: 






{ otf '. 



Spain is known for its 
excellent food and 
vine. Spaniards eat 
dinoer late, at 9 or 19 
••?>«+.. .Paella, 

, and a variety 
zers, called 
e popular. 



II 





Ltl.lEl EKfERUHCt 

n 



H 




Amazing Computing V5.7 ©1990 23 



"^ 



^^. 





Cinemaware's TV Sporls Basketball 



Accolade's Blue Angels 



for you in West Berlin. Your only infor- 
mation about the cities is a small map 
included with the game. While it does 
have street names and shows the U- 
bahn (subway) entrances, it does not 
have much other use, and it ■will be your 
task to explore the cir\^ scouting out the 
various eating, drinking, living, sleep- 
ing and office establishments. 

The game play screen is fairly well 
designed and generally provides the 
needed information during play. Along 
tlie left side is a forward looking view of 
what is currently in front of your char- 
acter. The artwork used here is clear and 
looks nice. The right hand side of die 
screen holds the player status displays 
which show health, strength, intelli- 
gence, and otlier important characteris- 
tics. 

Also on tliis side are the many 
action buttons available during play. 
Either the mouse, the keyboard, or a 
joystick can be used for play, making it 
one of die most flexible games around. 
It was a bit of disappointment diat the 
arrow keys could not be used to move 
around though, instead the designers 
chose to use N, S, E, and W to go those 
directions. It does do one thing in a dif- 
ferent fa.shion than what I have seen in 
other games. The on-screen "compass", 
which can be clicked on to move about 
the city, rotates during movement so the 
current direction is always on the top. 
After a brief adjustment, I found this ac- 
mally worked out well and didn't inter- 
fere too much with play. 

The game does have what I see as 
two major flaws. First, it seems West 
Berlin is just littered with panliandlers 
and muggers, who are downright hos- 
tile and will not hesitate to kill you for 
tile few bucks you have on hand. This 
would not be so bad, and does add 
some color to the game, but it seems 



that you cannot go four blocks without 
being accosted, and the more encoun- 
ters, the more likely you are to take 
damage, and probably even die, before 
you can drive the freeloader off .A little 
moderation here would have been ap- 
preciated. 

The other problem is the sotne- 
whai aimlcssness of die game. While I 
did manage to make it to HQ Ijy taking 
a taxi. (I couldn't walk there since they 
forgot to list it on die map.) But after 
stocking up here, I could only wander 
around the city, beating off muggers. I 
believe I was supposed to bribe people 
to get some information, but even after 
bribing a whole bunch of bartenders 
and waiters, I found I knew absolutely 
nothing more than when I started. 

There is probably a good game 
buried in here somewhere. But since I 
only have a limited tolerance for these 
t^'pes of games anyway, I doubt I will 
ever dig it out. The presentation of the 
game is nice, and the interface is good, 
but with the plot flaws, I cannot really 
recommend it. If you like starting games 
where you must figure out virtually eve- 
rything, you may actually enjoy this 
game. 

BLUE ANGELS 

Blue Angels, by Accolade, lakes 
flight simulators one step fardier. In- 
stead of simply flying from place to 
place, or shooting down enemies, the 
goal here is to do formation acrobatic 
flying, the kind people all over come 
out to see the Blue Angels do in Air 
Shows throughout the country. 

Flight Simulauon is a popular 
subject, but it actually looks like Acco- 
lade has found a new- angle. Not only 
can you do stunt flying witli a single air- 
plane, you can also use ilie game to fly 
in a Eight formation with four other 



planes. The game is verv' flexible at 
what it does, maneuvers can be prac- 
ticed in the simulator, at a practice air 
show, or at the "real" air show. 

During action, the camera's view 
can be taken from many different loca- 
dons: a chase plane, tire cockpit of one 
of the formation's planes, an observa- 
tion balloon, or a fixed spot in die 
stands. As with any flight simulator, it 
takes a while to become familiar with 
die controls. 

Performing the maneuvers them- 
.selvcs is also challenging. 'I'he typical 
sequence will be to first watch die plane 
carry out the maneuver while on autopi- 
lot. Then you will turn off die autopilot 
and fly through the square hoops that 
mark die path for the plane to fly 
through. Then the same move will be 
pjcrformed without the aids. Then sev- 
eral moves will be integrated into a 
pra ciice air show, culminating in a "real" 
air show. The graphics are acceptable. 
Wire frame images are used for most of 
die terrain and all buildings, but bit 
mapped images appear to be used for 
die planes themselves. 

The sound is very simple, ade- 
quate, but nothing to get excited about. 
The game is an adequate flight simula- 
tor, but if that's all you want to do widi 
it Uiere are tetter ones available. But if 
formation flying appeals to you, check 
diis game out. 

TV SPORTS BASKETBALL 

Cinemaware has brought out 
another dtle in their TV Sports series. TV 
Sports Basketball brings the ideas in 
their T\' Sports Football to the fast paced 
game of basketball. TVSB uses tiie same 
techniques found throughout Cine- 
maware games. T\'SB focuses on both 
aspects of the game of basketball. The 
underiying foundadon is based on 



24 Amazing Computing V5. 7 ©1990 



player stats and coaching decisions 
during games. But they do not stop 
tliere, a fast-paced arcade-like action 
game is added to maneuver the actual 
players around tlie court during the 
game. The .statistics used are extensive 
and can be viewed and printed from 
the clipboard section prior to play. Any 
team can be viewed from tliis page, 
and a wise coach will carefully exam- 
ine this page prior to playing any 
important games. 

Once die teams have been ex- 
amined, it is on to die actual game. 
Games can fall into one of two catego- 
ries, exhibition or league play. Exliibi- 
tion games can be between any two 
teams but do not affect either teams 
standing in the league. Bui just playing 
exhibition games would get old alter a 
while, and sooner or later players will 
want to go on to a regular season. In 
regular season games, up to 28 human 
controlled teams can be played off in 
one long season. The graphics are up 
to the standards set by dieir previous 
releases. Cineniaware devoted tlie 
necessary time to make high quality 
graphical images that look very nice 
on the screen and really compliment 
tl-.c game, And the sound is very clear 
and keyed to the on-screen action, 



even down to the squeak of tlie 
hightops on the court during play. 

Each game begins with a smooth 
animated intro sequence that looks 
ver}' similar to tho.se used by profes- 
sional broadcasters covering real pro- 
fessional basketball games. While this 
is probably not the top limit of what the 
Amiga can do, it does look very nice 
and can be enjoyable to watch all by 
itself. Then each side has the chance to 
select die starting players to use. Player 
selection is very important, not only at 
die start but also during play. Players 
grow tired and must be rested to obtain 
maximum performance. But a good 
coach must also be careful not to pull 
a player who is "on a roll", even if he 
is a bit tired , or he may loose a valuable 
scoring machine. 

After the starting lineups are 
selected, it is on to the tip off. Both 
sides comjjete for first control of the 
ball, and from tlien on it is fast and 
furious. The box does say that a player 
can skip the arcade sequences, and 
just play a more strategic game, but I 
was unable to locate this feature in the 
manual or in the game. So be ready for 
at least some arcade action. 

From one to four players can 
participate in the game action. The first 



two use the joysticks plugged into the 
nonnal slots, while the third and fourth 
player can only be added if you have 
a serial port joystick adapter available. 
But with the adapter, four people, two 
on each side, can compete at the same 
time, a feat not many odier games can 
match. In the two joystick mode, both 
players can either play on die same or 
opposing sides. 

As with odier Cinemaware re- 
leases, die main problem witli tlie 
game is its focus on action. It may take 
a few games to just get the proper mo- 
tions down. Since diis will usually be 
humiliadng defeats, it can be easy to 
get discouraged and give up. The 
amount of detail, while great for the 
simulation, can also be daunting. Since 
I am not a sports nut, it took me a while 
to get a grasp on all the statistics, and 
then to do the necessary replacements, 
and I am still not where I would like to 
be. But diis game has definite poten- 
tial, and I wouid recommend it, espe- 
cially to those who like TV Sports 
Football and other Cinemaware re- 
leases. 

PUPPY'S SAGA 

Puffy and his si.ster Puffyn, two 
adorable yellow ball shaped creatures, 




circle 124 on Reader Service card. 



Amazing Computing V5. 7 ©1990 25 











r- I I I ( 







^'?*1J^.-^- 



Sj. i..j.^J I 



l/B/ Soff's Pu^ Sago 



Viigin Mastertronic's NY Warriors 



have been stranded in an alien world. 
To get back home tliey must work their 
way through tlie 20 levels that make Lip 
this bizarre world. Such is the setting in 
Pufly's Saga, the latest product from UBI 
Soft, recently imported into the U.S. by 
Electronic Arts. On a superficial exami- 
nation, Puffy's Saga looks like a clone of 
Gauntlet, It features many of the tilings 
that made this game so popular: Ghosts, 
Dragons, dungeon walls, keys, doors, 
etc. But it is a complete game in its own 
right and is very fun to play. 

The game can be played in one 
of two basic ways. A player can simply 
aim at getting through each level as 
quickly as possible, or he can choose to 
take his time and explore every nook 
and cranny of each level, going for 
maximum points. Each has its own 
rewards, and tlie successful player will 
probably do some of each. The graph- 
ics in diis game are even better than 
ttiose in Guandet. Perspective graph- 
ics are used to add a feeling of depth to 
each level and the items and enemies 
scattered about each level are very 
detailed and look very nice. And tlie on- 
screen animation is smooth, even when 
many things are moving at the same 
time. The sound is also very reali.slic 
sounding and enjoyable to hear. 

Finishing this game will take a fair 
bit of playing. While 20 levels may not 
sound like much, it will take a long time 
for even fast players to make it to die 
end of the 20th level. And even more 
time is possible if you Uioroughly ex- 
plore each ievel. This gaine is enjoyable 
and is worth adding to tlie collection of 
anyone who enjoyed Guantlet and 
similar games. 

NYWAKRIORS 

Finally this month comes anodier 
arcade action game, with the focus on 



the action. NY Warriors was just re- 
leased by Virgin/Mastertronic and 
shows that they do know what it takes 
to make a high quality action game on 
the Amiga. It seems that the World 
Trade Center has been o^'er^u^ by ter- 
rorists and only you (and maybe a 
friend) can save it. But NY has deterio- 
rated a fair bit. Not only do terrorists 
await you at the end, mean gangs have 
taken over the streets and you must first 
fight through many stages of diese le- 
thal opponents. 

The focus, as with the odier ar- 
cade conversions by this company, is on 
the action. Things happen fast in this 
game. But this fast action is not as much 
of a problem here as it was in their 
sports game conversions ! co\'ered a 
few issues back. The graphics are also 
very sharp and probably die best of this 
months crop of quality' images. Tlie 
sound is sharp and clear, and most 
important of all, multiple objects can be 
on the screen at the same time without 
any flicker at all. Probably second only 
to Innerprise's Battle Squadron, I was 
very impressed with what Virgin/Mas- 
tertronic has done with their program- 
ming. 

Four different difficulty levels are 
available for play, but all are ver^' fast 
and the game lacks a truly easy level. 
The one diat is called easy is not tliat 
simple and will be challenging for 
nearly any player. The game also has 
the problem common with most arcade 
games that use power-up icons. If you 
die, you lose your current super- 
weapon and must start back with a 
wimpy pea shooter. But special weap- 
ons are fairly plentiful, especially in the 
later levels, so this is not as much of a 
problem as it might be. 

I would have liked the game bet- 
ter if the Easy level had been easy 



enough to allow me to actually com- 
plete the game after a bit of play. But 
even with the difficult here, I found I 
could actually do well after I learned 
where things were and how to best 
eliminate foes. This is a ^'orthwhile 
purchase for nearly any arcade action 
fan. The combination of quick action 
play, excellent graphics, and top notch 
sound make it a good purchase for 
everyone's arcade action library. 

•AC- 

Products Mentioned 

Wheio in Curope is Carmen Sandiego? 
Broderbund Software Irx:. 
i 7 Paul Drive 
San Rafael, CA 94903 
(800)521-6263 
Price- $44.95 
Inquiry !f202 

The Third Courier 

Accolade 

550 South Winchester Boulevard. Suite 200 

San Jose. CA 95 128 

Price -S49.95 

Inquiry *203 

Blue Angels 

Accolade 

550 South Winchester Boulevard. Suite 200 

San Jose. CA 95 128 

Price- $49.95 

Inquiry *204 

TV Sports Basketball 

Cinemaware Corporation 

P.O. Box 5083 
Westlake Village, CA 91359 

Price - $49.95 

Inquiry #205 

Puffy's Saga 

UBI Soft 

Electronic Arts Distribution 

1810 Gateway Drive 

San Mateo. CA 94404 

(415)571-7171 

Price - $34.95 

Inquiry ^206 

NY Warriors 

Virgin/Mastertronic 

1800! Cowan. Suites A&B 

Irvine. CA 92714 

(714)833-8710 

Price - $49.99 

Inquiry *207 



26 Amazing Computing V5. 7 ©1990 



Synchronicity: 

Right & Left Brain Lateralization 



by John lovine 




PEOPLE ARE TRADING IN THEIR TRANSCENDENTAL MEDITATION mantras 
and alpha brain training devices for the latest in consciousness-expanding 
techniques: right and left brain synchronization using sound, music and light. 



BRAIN SCIENCE 1 01 

Brain researchers have determined that 
people who use both sides of their brain equally 
usually have enhanced creativity and problem 
solving abilities. 

When you look at the human brain, it is 
easy to see that, in reality, it is a double organ, 
constructed of symmetrical and identical hemi- 
spheres. 

Information gleaned from the last 40 years 
of brain research shows tliat each hemisphere of 
tlie brain has its own methodolog\' of problem 
solving abilit)' and its own way of perceiving die 
worid around it. The right brain is non-verbal, 
emotional, holistic and spatially oriented (ie. die 
emotional side). The left brain is verbal, sequen- 
tial, literal and emotionally flat, (the logical side.) 
The re\-erse is uiie for 30 percent of left banders. 

Both sides of our brain are connected by 
millions of nerve fibers called the "corpus callo- 
sum". This brain organ is responsible for ex- 
changing information befw'een the right and left 
brain hemispheres. 

Just to give a litde background on this 
specific area of brain research, much of tlie infor- 
mation gained from this type of research began 
with operations on people who were exjjerienc- 
ing severe epileptic seizures. It appears that die 
onset of a seizure begins with a localized abnor- 
mal electrical activity in the brain that quickly 
spreads throughout the brain. The doctors de- 



cided to cut through tlie corpus callosum, in effect 
separating tlie hemispheres, in an effort to keep 
the seizures localized. 

The operation succeeded, but left the pa- 
tient with two distinct split brain personalities. 
Other information was obtained from people 
who had suffered strokes (cerebral hemorrhages) 
that destroyed one half of the brain while leaving 
the odier intact. 

Fortunately today, researchers don't have to 
experiment with anyone who has gone dirough 
this kind of tragedy. Since each half of the brain 
is fed by a different aner^' in the neck, researchers 
can selectively put one side of die brain asieep 
using a tranquilizer injected into one of the arter- 
ies. This is called die 'Wada procedure." 

RIGHTY OR LEFTY? 

When presented with a problem one side of 
the brain usually takes over and becomes the 
dominant problem solver, depending upon the 
nature of tlie problem. A mathematical or verbal 
problem will usiially be handled by the left hemi- 
sphere, The right hemisphere will take over in 
visual and spatial problems. All this hemisphere 
switching happens beiow our level of awareness 
(subconsciously). 

Researchers David Galin and Robert Om- 
stein first discovered this division of labor in the 
brain in 1972. They recorded EEG (electroen- 
cephalograms) patterns separately from both 



Amazing Computing V5-7 ©1990 



27 



The Kmeger 
^^ Company 

Processors 

12 MHZ 68020 $25.00 

25 MHZ 68020 $65.00 

33 MHZ 68020 $70.00 

16 MHZ 68030 $40.00 

20 MHZ 68030 $70.00 

12 MHZ 68881 $25.00 

20 MHZ 68881 $55.00 

DRAMS 

256KX4-80 DIP/ZIP 
256KX4-10 DIP/ZIP 

Unconditional 30 Day Guarantee 
(800) 245-2235 (602) 820-5330 



the subconscious or unconscious right hemisphere ■'nDn-\'erbal". 
Since the right brain is equally conscious, and we don't want to 
unjustly insult ourselves, do we? 



circle 116 on Raader Service card. 



brain hemispheres. Wlien various problems were presented to the 

subject they obsen'ed that one hemisphere became the dominant 
problem soh'er depending upon die nature of tlie problem. When 
a verbal task was assigned to the subject, a decrease in the alpha 
rh\l:lim was noticed on the left side while it remained constant on 
die right. This cleady indicated that the left brain was w^orking on 
the problem while tlie right brain continued to idle. W'hen a visual 
task was assigned to tlie subject, die opposite results were 
observed. 

In some instances both halves of the brain compete for 
control; this happens when boili sides want to answer a particular 
problem or question. This can result in stammering and stuttering. 

FREUD 

The right brain is strikingly similar to what Signiund Freud 
described as the subconscious (unconscious) mind. Many tech- 
niques used by psychologists to probe a patient use right brain 
superiority in task handling. The Rorschach ink blot test, for 
example, w^here an ink blot is presented to a patient for image 
association, is clearly a right brain task. 

Anotlier Freudian concept used for psychological analysis, 
dreams are strongly located in the right hemisphere. 

These approaches work because die right hemisphere has its 
own memorj- of events, and they are not necessarily the same 
memories as the left hemisphere's. Repressed memories and trau- 
matic events from a patient's past may be brought to die surface by 
employing these psychological tools. 

In consideration for what we have learned on right and left 
brain hemispheres, I think it would be appropriate if we renamed 



BRAINWAVES 



0H2 



Delta 1-4 Hz 



Theta 4-7 Hz 



Brain Dead 

slow- waves more common in children and a 
normal part of their development. Adults pro- 
duce delta brainwaves from time to time during 
sleep. 

appears to be related to problem solving, sorting 
and filing of information witliin the brain's 
memory. Theta waves are also produced by Zen 
practitioners in deep meditation. 



Alpha 8-13 Hz dominant rliyUim in normal adult EEG when 
subject is relaxed, awake widi eyes closed. 

Beta l4 Hz+ appears in normal adults who are "alert" as 

opposed to relaxed. Being in "beta" is identified 
as being tense, irritable and basically unpleas- 
ant. 

NEWWAVE 

In the 1960's and early lS>70's Transcendental Meditation and 
bio-feedback devices to help produce alpha waves became some- 
thing of a rage. It promised enlightenment, relaxation and stress 
reduction. Today there is a growing interest in right and left brain 
s^TLchronization. 

This technique discovered by Robert Monroe promises to put 
anyone into alpha, tiieta or delta states (beta state is die norm) by 
listening to sound that has a S)'nchronized beat to it. The brain wave 
pattern becomes entrained b)- tlie synclixonized beat and follows 
it. The synchronized beat should be at tlie EEG frequency' one is 
interested in obtaining. For example, you might try a 9 Hz beat 
frequency for alpha, 6 Hz for dieta and 4 Mz for delta. 

MIND GYMS AND MIND MACHINES 

iViind machines and mind gyms are offered as a quick fix for 
everyday stre.ss. Some claim to u-ain your mind to be more creative, 
productive and imaginative. More ambitious advertisers claim 
physical benefits such as lower blood pressure, alleviating migraine 
headaches, and improved intellectual capability. The improved 
intelligence is derived by maximizing the lateralization of the right 
and left hemispheres for problem sol\-ing. 

Mind machines operate on die premise that your state of mind 
can be influenced by exposure to sound, light and electromagnetic 
fields. Mind machines such as the Synchro-Energizer are for sale 
being advertised in many magazines like Omwj'and Psychology 
Today. These machines topically consist of goggles with flashing 
lights and headphones that play synchronized sound. The light 
flashes from the goggles are synclironized widi the beat frequency' 
of the sound from the headphones. 

Mind gi'ms are turning up around the country. In die.se 
"g>'ms' you have basically the same type of equipment wired to 
handle a multitude of customers. 

WITH A GRAIN OF SALT 

All claims should be taken with a grain of salt. I don't think 
any of these companies have an FDA approval or have filed for such 



28 



Amazing Compiiliiig V5.7 ©1990 



approval. Fortunately for us, we don't have to buy any macliine or 
invest a large sum of money to start checking tliese claims out for 
ourselves. We have an Amiga computer tliat is quite capable of imi- 
tating and possibly surpassing these stand alone sound and light 
machines. But we'll come back to this later on. 

FDA 

It is the FDA (Food and Drug Administration) responsibility 
to keep worthless or potentially hazardous devices out of tlie 
public's hand. Any device tliat could be classified as a "medical 
device" must go dirough clinical trials before being marketed. Are 
these sound ancl light machines medical devices? A lot depends 
upon the wording of the ad\-erdsement. But the claims made by 
many of tliese companies are really pushing the issue. 

The reason why these machines are allowed on the market 
in the first place vsithout clinical trails is an FDA loop hole in the 
510-K statue. This loop hole waives the standard clinical trials for 
any device that has been on die market before 1976. A proto-t^'pe 
sound and light machine called ISIS has been around and marketed 
since 1971. 

SOUND 

Sound at die brain EEG frequencies is far too low to hear. But 
by playing two sounds together whose frequencies vary by a small 
amount, (as an example let's use 9 Hz, alpha freq.), a beat frequency' 
of 9 Hz can be heard. This sounds like a wah-wah-wali or wavering 
in and out of the sound frequency and volume. What you're hear- 
ing is actually the difference between die two frequencies. 

A sound example is wortli a diousand words. In order to 
clarify diis explanation, please power up your Amiga computer and 
load AmigaBASIC. In die AmigaBASIC window enter: 

Rem Sound Test 

Rem 'Voice & 3 are Left Channel 

Rem Voice 1 & 2 are Right Channel 

Sound Wait 

Sound 523,70,255,0 

Sound Resume 

Run this program. What you hear is a "C" note. Now enter this 
additional line after the first sound statement and before the sound 
resume statement. 

Sound 532,70,255,1 

Run the program again. Notice the difference; you should hear the 
note -wavering in and out. Tliat's die beat frequency, the difference 
of 9 Hz between botii sounds. 

FFR FREQUENCY AND FOLLOWING RESPONSE 

This is a term constructed by Monroe to describe his 
technique. Essentially by presenting these sounds separately to 
each ear, die EEG wave pattern of the brain will follow die beat 
frequency. So if we used the program example above, this should 
make our brain wave resonate at 9 Hz bringing on an alpha state. 

It is necessary' and important to use stereophonic head- 
phones connected to the right and left channels on the Amiga audio 
out. The sound must be mixed intra-cranially in order to generate 
any effect. 

! should point out that when scientists originally tested 
experienced Zen meditators, dieir right and left hemispheres did 
fall into synchronization. 



Match printer output to RGB monitors. 




R 



7\LETTE TRINTER tm 

A COLOR MATCH SYSTEM for the AMIGA 

",,.a really useful effort aimed a1 professional 
applications..." Amiga Sentry Review, July 1989. 

30 IFF screens output 850+ colors with 
RGB settings printed below each swatch. 

Conversion Chart for RGB to YMC% process color 
is Included for Desl<top/Electronic Publishing. 

ARTISTS: Know the palette potential of your 
color printer. PreSet your RGB color output. 

GRAPHIC DESIGNERS: Create impressive 
color "dummy" proofs In-house closely 
matching final process printing colors. 
$29.95 check or M.O. (includes poslaga S handling) to 

ONTOLOUICAL SURVEY 

P.O. BOX 17488 

MILWAUKEE, WISCONSIN 53217-7488 

Dealer inquiries invited (414) 332-1818 

Amiga Is a trademark ot Commodore-Amiga, Inc. 



Circia 127 on Reader Service card, 

THEPROGRAM 

This program is for diose of you who would like to try diis 
technique. You can attempt enhanced leaming, programming, re- 
laxation or whatever. 

The program first queries you for what frequency you'd like 
to try; alpha , theta or delta . Then you will be asked for a dme period 
for how long the program will produce the sound. Once the 
program is started, you can use your gadget to shrink die ■p.'indo'w 
and then open another to work on something else. 

MUSIC 

Listening to a monotone note can get boring. There isn't any 
reason I can tliink of that would prevent diis system from ■working 
with music. The basic idea of course would be to assign one 
channel to follow the odier with a frequency difference of the brain 
wave state you'd like to explore, 

CONSTRUCIJON 

There isn't any construction involved in this project. You only 
need two pieces of equipment. One is stereo-headphones, the 
other is a "Y" adapter. The "Y" adapter must have 2 RCA phono 
plugs on one end that plugs into die two audio-out sockets on tlie 
Amiga. The other end of the adapter must have a socket to plug 
your headphones into. Plug the " Y" adapter into the Amiga, and the 
headphones to the "Y" adapter and you're ready to go. 

Headphones and die "Y" adapter can be purchased at a local 
Radio Shack or Stereo store. 

Test the unit out by putting on the headphones and playing 
a sound first in one channel and then the other. You should hear 



Amazing Computing V5.7 ©1990 



29 



Some people race against time. 



Today Buck Walker is racingtmough it, 



Adventures Through Time 
Vol I: The Scavenger Hunt 



Join Buck Walker, the rebellious son of a United Earth Historian, in a race into the 
past to compete in the world's first scavenger hunt through time. Are you clever enough 
to find your father's time machine? Do you dare confront the challenges that await? 

The adventure begins... at a store near you. 

' Aurum Software -^: 

Box 5392 Ventura, CA 93005 (805)659-3570 



circle 106 on Reader Service card. 



the sound on only one side depending upon whicli channel is 
active. 

CONCLUSION 

We have only scratched the surface of die current hap- 
penings in brain research. 1 do not have an EEG machine to 
verify' whether diis technique acaially works. I do plan to build 
one later diis year as an interfacing project for the Amiga 
computer. In addition if tliere is sufficient reader interest in 
doing so, I will write anodier article and a circuit diat adds die 
flashing lights to go along with the synchronized sound section. 
Or perhaps a simple test program and article to determine your 
own right- and left- brain lateralization. 

It has been said and written many times that humans only 
utilizelO percent of dieir brain capacity. In as much as there are 
so many claims iha t these devices improve your intelligence and 
allows one to utilize more than the standard 10 percent of tSie 
brains capacity, I want you all to know that I use at least 10 
percent of my brain or 10 neural synapse firing (whatever comes 
first), whenever I write, whedier I need them or not. 



Listing 

REM Sound Synchronization Software 
REM By John lovine 



RSM channel i 

REK Channel 1 & 

rrjaenu : 

Ci.S: LOCATE 7,25 

PRINT 

PRINT 

PRINT 



re i-ert 
re Right 



PRINT 

PRINT 
PRINT 



"Menu" 
" 1} Set EEG Frequency 
* 2) Set Time" 
" 31 Run" 
" 4) Quit" 
PRINT ''Enter Selection 



INPUT a 

ON a GOTO EEG, ptirr.ef start, pSND 

EEG: 

CLS: LOCATE 7,30 

PRINT " EEG Menu" 

PRINT 

PRINT "11 

PRINT "2> 

PRINT "3) 

PRINT "41 



Delta "^ 
Theta™ 
Alpha" 
Beta" 

"Enter Choice 11-41" 



PRINT :?RIKT 
INPUT a 

IF a=l THEN b-3 
I? a=2 T.HSN b=6 
IF a-3 THEN b=9 
If a-4 THEN b-12 
IP acl OR a>4 THEN EEG 
GOTO n.T\enu 
ptime : 

CLS: LOCATE 7,30; PRINT "Set Time Elapse" 
PRINT 

PRINT "Enter ncaber of ni.nites program, tc -ur. . " 
IKPOT t 

IF t<0 THEN ptiree 
GOTO minenu 
start : 

CLS: LOCATE 7,7: 

PRINT " At this point you ."nay shrinjc this window" 
PRINT "using the gadget in the lower rioht hand corner" 
PRINT "and open another window. Or use the back gadget " 
PRINT "in the upper right to get back to an opened window" 
IF b=0 THEN b=9 :REM default to aiph.a 
St - t"60 
stiver " TI>ER ^ St 



WHILE Ti.'iER < seller 
Edl=63e.25: REM Isc note value 

SOUND W.:iIT 
SOUND sdl,77,255,2: SOUND sdl+b, n, 2S5, 3 
SOUfJO RES«:-E 
WEND 



GOTO mmenu 
pEND: 
CLS : END 



•AC- 



30 



Amazing Computing V5. 7 ©1990 



AmiEXPO '90 
BaseL Switzerland 

The Swiss really know how to throw a party for the Amiga. And why not? 
It's Europe's number one selling machine. 

by Peter Sacks 



ABOUT 14,000 PEOPLE ATTENDED 
the AmiEXPO in Basel, Switzerland. Held 
on May 9 tlirough May 1 2, the show gave 
Europeans some fascinating giimpses into 
what lies ahead for the Amiga in tlie 1990s. 

The good folks at Commodore Swit- 
zerland had the honor of officially intro- 
ducing tlie flashy new A3000 to die Euro- 
pean public at the recent AiMIGA '90 Basel 
show. 

While tlie A3000 was the main attrac- 
tion for most visitors, there were also 
several other interesting products high- 
lighted there. It was a good mLxture of 
attendees: in Europe — where there are 
about 500,000 Amigas in use — the Amiga is 
mainly a game madiine for youdis and nor- 
mally those young people are the most 
conspicuous crowd at shows. 

Not so at Basel, which wa.s a tlior- 
oughiy professional show widi a myriad of 
interesting and well-informed people in 
attendance. Though not quite on par widi 
Cologne in November '89 (40,000 atten- 
dees forced e.xhibitors to close the doors 
sometimes because the hall was too over- 
crowded), it was for the most part a higlily 
successful show. 

So what of note took place at Basel? 

Commodore's Dave Hainey, one of 
the main designers of the A3000, was ex- 
tremely helpfijl in answering hundreds of 
questions. Commodore sold assorted pro- 
motional gifts and debuted tlieir new multi- 
media program — AmigaVision — right 
alongside the spectacular new A3000. 

Alexander Gloss, President of 
AmiEXPO Inc., gave an interesting speech 
on the history of AmiShows Europe, and 
discussed shows planned for the future. 
Among them, an AmiEXPO is planned for 
London in 1991. Ralf Hollax, General Man- 
ager of AmiShows Europe, focused on 
show organization matters and assured 



diose of us in Base! that AmiShows had 
learned a lot from 1989's oversuccess in 
Cologne. They have moved to expand ex- 
hibition space to 25,000 square meters for 
this year's show in Cologne, so we will 
surely have a better go of it this time. 

Other speeches were given by Au- 
gust Harder, a Swiss Commodore manager 
and Wolfram Hoefler of Markt & Technik 
(the patronaging publishing house) also 
talked about the incredible success ol' 
AmiEXPO in Cologne. Albert Absmeier. 
chief editor of Amiga Magazin (an official 
co-patron of AmiEXPO's in Europe, aloni; 
witli Commodore), said "Informing before 
buying is important — an exliibition is the 
ideal forum for information-gathering". 
Well-known Amiga artist and video de- 
signer Joel Turner showed a nice film he 
made with the Amiga. 

As for new products exhibited at 
Basel, we had a look at an interesting prod- 
uct named the 'Colourbox,' a blue-box 
system for tlie Amiga presented by Intelli- 
gent Memory. Just in case yoti are not 





Above: 

Alexander 

e I o $ s , 

President of 
AMI Shows, 
Inc. 

Left: 

Commodore 
stiows ott 
lt\e A3000. 



Amazing Computing V5. 7 ©1990 31 



mazmsMMiGA 



gives you 

the power to do more 

with your Amiga! 

In recent issues, 

AC has given you the power 

to turn your AlOOO into a 

ROM-based machine. 

To upgrade your A500 to 1 megab)^e. 

To transform your Amiga into a 
biofeedback/iie detector device. 

To use your Amiga as 

the command center for a 

remote-conti-olled home of the future. 



A future that is 

m your hands now, 

thanks io Amazing Comptitingl 



There's power in our new product previews, 
oroduct reviews and tutorials, too. 
Aus.AC takes you to all the major shows I 
witli detailed, timely coverage! 

r 

COMPARE! iC actually publishes 
many more pages of solid information - 
insightful columns, departments and features - 
than any other Amiga publication! 

NOW- A LIMITED TIME OFFER: 

Put a full year of AC POWER in your hands for just 
Or, subscribe for 2 years and pay just $38 - - 
that's a SAVINGS of 60% off the netvsstam 



Remember - we also place 

the entire Amiga marketplace 

at your fingertips in the pages of £ 

AC GUIDE J^MIGA 

It's the o/?/y publication in the work, 
that lists every product 
currently available for the Amiga! 

To subscribe, just use one of the 
cards provided in this powerful issue! 




I 



Or, call 1-800-345-3360 (credit card orders only)! 



familiar with what a blue-box is, it's a piece 
of video equipment that takes two video 
sources (one of whicti includes a blue field, 
normally in the background), and superim- 
poses one shot on cop of the other by 
displaying the field of view from one 
source in place of that field of blue in the 
second. With tliis technique. Superman is 
able to fly through the streets of New York, 
and with your Amiga and the Colourbox, 
you could do the same. 

GVFs booth 



minutes in length directly from die hard 
drive, with 30 HAM pictures per second, 
each about 45 kilobytes. Unfortunately, I 
was unable to get any comments on price 
and availability. 

Combitec, a West German company, 
was some time ago able to finish their Atari 
ST-Emulator for the Amiga, but shortly 
afterwards they went bankrupt. As it was a 
good working piece of soft/hardware (it is 
a module for the A2000 and an emulator of 




The difference between a normal 
blue-box and the Colourbox is that the 
Colourbox allows you to use any color for 
the "blue" purpose. Of course, you can also 
use it as a normal Genlock and fade pic- 
tures in and out. The Videobandwidth is 
over 5 iVIHz. The Colourbox will be ship- 
ping in October 1990 and is priced in 
Germany about DM 1800 — that would be 
slighdy over SIOOO U.S. 

Several exhibitors presented hard 
dri\-e solutions for the Amiga. One of the 
most long-awaited and fascinating of those 
■was .'Vriba, an internal 20 Meg hard drive 
from Gigatron for the .\miga 500. Ariba 
consists of a controller, which is plugged 
direcdy into the base of the 68000, and a 2- 
1/2 inch, 23-millisecond drive. The combi- 
nation has a transfer rate of about 300 
KByte per second, and will be sold in 
Germany for DM 1298, which is about 
$750. 

IVS, represented in Europe by DSP, 
showed their new Taimpcartl i'rofessional, 
a SCSI-Controller for the Amiga with in- 
credible transfer rates. The normal ■s'ersion 
is able to achieve rates of 900 KBytes per 
second. Combined with a 68030 it may 
reach a tremendous 1.5 MB>tes/second — 
if the hard dri\'e is able to go along. Ac the 
show there was a nice demo in which an 
Amiga played a Disney film of about 3 



I4k lengtli only), the rights were direcdy 
bought by 3-State. They exhibited it at the 
Basel show and are going to sell the soft/ 
hardware for around DM 600 (S340 U.S.). 
Unfortunately, I'm not sure of the evencua! 
market for it, as several PD versions of an 
ST-Emulator are now being passed around 
in Germany, and they do not need any 
hardware. Their only fault is diat tiiey are 
incapable of writing ST disks, but they can 
read them without any problems. 

bsc, a German third-part)- supplier, 
showed some really "amazing" new prod- 
ucts for the Amiga. The most interesting of 
tliese was tlie NonFlicker Cable, a simple 
cable to connect a cheap PC TTL-Monitor to 
the Amiga. The cable is able to reduce 
flickering in interlace mode, but it is onl)' 
capable of displaying four colors, so you 
won't have too much fun with color-inten- 
sive programs. With the cable, your moni- 
tor will still flicker a bit, but it is a really 
good and most economical (only about S40 
U.S.) alternacive to the expensive Flicker- 
Fixer. Also shown by bsc was Ultradesign, 
a good-looking CAD program, which 
seems verj' easy to use as it is completely 
mouse-driven and appears quite powerful. 
But we should have a closer look at it 
before commenting too fully. Wliac is noc 
so amazing is the price, around S600. 



Memory and Storage Technology 
CM.A.S.T.) started business in Germany just 
a short time ago, and had a big booth at the 
Basel show. They had good success with 
their existing product line at the show, and 
also showed off their brand-new Blitz- 
Basic!, a basic-like language which gives 
much more control over graphics, sprites 
and sound than Amiga BASIC gives co the 
programmer. Ic lets one manage the copper 
and blitter, and pro\'ides for dual play- 
fields, double buffering and smooth scroll- 
ing. With it, M.A.S.T. also supplies a com- 
piler which produces pure assembler 
code, and doesn't use the slow Amiga OS 
Libraries. The editor with Blitz-Basic! is also 
excellent, and long-suffering AmigaBasic 
people will especially appreciate that it not 
only has the functions of a small text editor, 
but also has online help texts for keywords. 
A brief overlook of Blitz-Basic! proves to be 
ver>' good: in particular, the demos were 
impressi\'e, as were die short and neat pro- 
grams used to create them. Ic appears that 
for around SlOO we are getting an excellent 
piece of soflr^-are. 

Gold Vision, a German company 
headquartered in Berlin, presented their 
"IFF to Vector" program Vector-Trace. 
X'ector-Trace turns a nomial IFF image into 
a vectorized version, so you can blow it up 
without getting the so-called Jaggies. This 
is extremely useful for DTP programs, es- 
pecially when w^orking with scanned im- 
ages or logos. VectorTrace can save the 
vectorized image in AegisDraw, PostScript 
or VideoScape3D format so that you have 
professional-looking images in DTP form, 
even if you had to enlarge the image. Vec- 
torTrace is sold in Germany for DM 150, 
(about 85 dollars U.S.). 

A neat product came from Rossmo- 
eller. Their A500 Power PC Board is a PC 
card plugging into the internal expansion 
slot, The board is fitted with 1 .VIeg of RAM 
and a NEC V30 processor with 8 MHz, and 
supports Hercules and CGA graphics. In 
die PC mode it has 768K free RAM, in the 
.\miga mode you can use it as normal 
expansion memory- ■n-ith 5 1 2 K autoconfig- 
uring RAiM and a 512K R.'VM disk. Interest- 
ingly, the board uses the normal Amiga 
ports, so you can use your drives/mouse/ 
joystick and parallel/serial connectors of 
the PC. The complete board \s'ith MS-DOS 
4.01 sells in Germany for DM 798, or S450. 

When looking back on the shoiA-, one 
has to say that for die attendees it was a very 
enlightening and successful show. One 
was able to meet and talk to many knowl- 
edgeable Amiga professionals about their 
experiences with tliis product or that, and 
to exchange some hints. 

•AC- 



3"^ Amazing Computing V5. 7 ©1990 



List of Exhibitors 



3-S1ate Cranputertechnik 

SchQumburgstroise 17 

4350 Recklinghousen 

West Germany 

Telephoro: 49-2361-16207 

!nquitv#213 

A + L AG 

Doedere61 

CH-2S40 Grenchen 

SvA\zei\orid 

Telephone: 41-65-52031 1 

lnquiiv#214 

Aloomp 

Glesc|-erWeg22 

SOlZBedburg 

West Germany 

Telephone: 49-2272-2093 

!nqulrY'215 

AMIGA-Mogo2in 
Verlog Markf & Tochnik 

Hons-Pinsel-Slrasse 2 
6013 Hoar bei Munchen 

West Germony 

Telephone: 49-89-46130 

Inquiry #216 

bsc Burooulomotton GmbH 

Schleissheimef STroise 205q 

eOOO Munchen 40 

West Germany 

Telephone: 49-69-3084 1 52 

Inquiry *21 7 

Manfred Carle Hard-Softwore 

Longslrosse 23 

6450 Honou 

West Germany 

Telephone; 49.6181-251628 

Inquiry #2 18 

Commodore Buromoseh GmbH 

Longenhogstrosso 1 

CH-4147Aescfi 

Switzerland 

Tel^hone; 41-61-7071 11 

Inquiry #219 

Comp-U-Sove 

414 Mople Avenue 

Westbury, tW, USA 11590 

Telephone: 516-997-6707 

Inquiry #220 

Compullt Data Service 

Helnstrosio 23a 

6368 Bad Vllbol 

West Germany 

Telephone: 49-69-8448 19 

Inquiry #22 1 

Demonware 

Strahlenberger Strossse 125q 

6050 Offenbach 

West Germany 

Telephone: 49-69.8004703 

inquity #222 

Dorx3U-Sott 

Postfach 1401 

8858 r^leubufg/Donau 

West Germany 

Telephone: 49-843 1-49798 

Inquiry #223 

DSP Hard & Software 

Schaufelweg 1 1 1 

CH-3098ScNiem 

Switzerland 

Telephone: 41-31 -535351 

Inquiry #224 



DTM Werbung & EDV GmbH 

Poststrosse 25 

6200VViesboden 

West Sermony 

Telephone; 49-6121-502059 

Inquiry #225 

Dynamic Computer 

GutenbergstroHe 5 

CH-1023Genf 

Switzerland 

Telepfrone; 41-22-444017 

Inquiiy #226 

Elepro AG 

furtbochweg 63-65 

CH-e304 Wollisellen 

Switzerland 

Telephone: 41-1-8302000 

Inquiry #227 

FSE-ComputorsystemB 

Schmiedstrosse 1 1 

6750 Kaiserslautem 

West Germany 

Telephone: 49-631-67096 

Inquiry #228 

Gigotron 

Resthauser Strasse 128 

4S90 Cloppenbufg 

West Germany 

Telephone: 49-4471-3070 

Inquiry #229 

Gold Vision 

Kurfurstendamm 64-65 

1000 Berlin 15 

West Germony 

Telephone: 49-30-8833505 

Inquiry #230 

Sreot Volley Products, Inc. 

225 Plonk Rood 

Pooti, PA, USA 19301 

Telephone: 21 5-889-941 1 

lfXIUiiy#231 

Heutronic AG 

Unterfuhrungsslosse. 29 

CH-4601 Olten 

Swrtzeilond 

Telephone: 41-62-260222 

Inquiry #232 

ICD Europe GmbH 

Am Goldberg 9 

6056 Heusenstamm 

West Germany 

Telephone: 49-6104-6403 

Inquiry #233 

Inteihgent Memory 

Waechtersbocher Strosse 69 

6000Fronkfurl61 

West Germony 

Telephone: 49-69-410072 

Inquiry #234 

Irsee-Soft 

Gfuenter^slrosse 6 

8951 Irsee 

West Germony 

Telephone: 49-834 1-82 11 

Inquiry #235 

Konyo Electronics Vertriebs GmbH 

Auwiesenweg 3 

8049 Unterbruck-Fotirenzhausen 

West Germany 

Telephone: 49-3133-601 

Inquiry #236 



Kupke Computertechnik GmbH 

Burgweg 52 

4600 Dortmund 1 

West Germany 

Telephone; 49-231-818325 

Inquiry #237 

Logico Software 

S, On. des Poleyres 

CH-1006Lousanne 

Switzerloncf 

Telephone: 41-21-265212 

hquiry #238 

Logo Software 

HoferfekJstrasse 38 

8901 Meitirigen 

West Germany 

Inquiry #239 

Mosoboshl 

Joachimstrosse 16 

4630 Bochum 

West Germany 

Telephone: 49-234-308151 

Inquiiy #240 

M.A.S.T. GmbH 

Theodor-Heuss-Ring 19-21 

5000 Koein 1 

West Germany 

Telephone: 49-221-7710918 

»nquliv#241 

M.A.S.T. USA 

1395 Greg Street 

Sparks. NV. USA 8943 1 

Telephone: 702-359-0444 

Inquiry #242 

Microtron Computerprodukte 

Bahnhofstrasse 2 

CH-2S42 Pieterten 

Switzerland 

Telephone: 41-32-672429 

Inquiry #243 

Micro-Systems Softwore lyiSS 

12793 Forest Hill Blvd. Suite 202 

Polm Beach, a, USA 33414 

Telephone: 407-790-0770 

Inquiry #244 

Miky Wenngotz 
JoegerwegSl 
8031 Gilching 
West Germany 
TelephDna: 49-8105-24540 
Inquiry #245 

Mrndware International 

230 Bayview Dr.. Suite 1 

Borne. Ontario. Canada L4N 4Y8 

Telephone: 705-737-5998 

Inquiry #246 

Otronic Computer und 

BouteleShop Harxfelsges.m.b.H. 

Bleibtnje5tT(K5e2/i 

A-lllDWien 

Austria 

Telephone: 43-222-767001 

Inquiry #247 

Print-Technik GmbH 

Nicolaistrosse 2 

BOOO Munchen 40 

West Germany 

Telephone: 49-69-366197 

Inquiry #248 



Reisware 

Postfach 36 

S584Bulloy 

West Germony 

Telephone: 49-6542-2086 

Inquiry #249 

Rossmoeller GmbH 

Neuer Markt21 

5309 Ivleckenheim 

West Germony 

Telephone: 49-2225-2061 

Inqiwy #250 

Softlogic Publishing Corp, 

11131 F.S. TowneSq. 

St. Louis, MO, USA 63123 

Telephone: 314-894-8608 

Inquiry #251 

Softworetortd AG 

Fronklinstrosse 27 

CH-8050 Zurich 

Switzerland 

Telephone: 41-1-31 16959 

Inquiry #252 

Schneider Verlog 
Am Weinberg 44 

8301 Arth 

West Germany 

Telephone: 49-8704- 1 597 

Inquiry #253 

Supra C(xporotk)n 

1 133 Commerckj! Way 

Albany, OR. USA 97321 

Telephone: 503-967-9075 

Inquiry #254 

Telekommunikotion Kaoben-Riis Gbr. 

Projensdorfer Slrasse 14 

2300 Kiel 1 

West Germany 

Telephone: 49-43 1 -33786 1 

Inquiry #255 

TSS Hand k: Plastics 

Bementenweg 1 8/0 

NL-3201 LG Sptjkenisse 

Netherlands 

Telephone: 31-1880-22220 

Inquiry *256 

VIdeocomp 

Bemer Strosse 1 7 

6000 Frankfurt/Main 56 

West Germony 

Telephone; 49-69-5076969 

Inquiry #257 

Vidtech International 

2822 NW 79 Avenue 

Miami, FL, USA 33122 

Inquiry #258 

Vortex Computersysteme 

Falterstrosje 51-53 

7101 Flein 

West Germany 

Telephone: 49-7131-50860 

Inquiry #259 

Weko-Verlog 

Hermetschloo 77 

CH-SOlOZCrileh 

Switzerland 

Telephone: 41-14-328432 

Inquiry #260 

X-Pert Computer Sen/ice GmbH 
Weihierwiese 27 

6270 Idstein 

West Germany 

Telephone: 49-6 1 26-3809 

Inquity #270 



Amazing Computing V5. 7 ©1990 35 



OUTSIDE USA & CANADA CALL 

(718) 692-0790 

FOR CUSTOMER SERVICE 

Call: Mon-Thurs, 9AM-5PM 

Fri, 9AM-4:30PM (718)692-1145 



Retail Outlet, Penn Station, Main Concourse 

(Beneath Madison Square Garden) NYC, N.Y., 10001 

Store Hours Mon-Thurs 9-7:30/Fri 9:00-6:00/Sat CLOSED 

Sun 9:30AM-7PM 
FOR ORDERS & INfORMATtON IN USA & CANADA CAIL TOLL fflff 

1-800-759-6565 



OR WRITE TO: 

Montgomery Grant; Mail Order 

Department P.O. Box 58, 

Brooklyn N.Y., 11230 



FAX NO. #7186923372 
TELEX 422132 MGRANT 



ORDER HOURS: Mon-Thurs, 9:00am-7:00pm / Fri, 9:00am-6:00pm / Sat CLOSED/Sun 9:30am-6:00pm (ET) 

NO SURCHARGE FOR CREDIT CARD ORDERS / WE INVITE CORPORATE AND EDUCATIONAL CUSTOMERS 

RUSH SERVICE AVAILABLE / TOLL-FREE TECHNICAL SUPPORT 



>Amigii500>i/512KtlAU 
•Butf-iiil.S'Diik[>Krs 
•lOUBKxdDitt* 
■ Mcu« 

■Syiltm Softmra 
■Amiga Base 

$519 




AMJGA-500 
COMPLETE w/1084 
RGB COLOR MON. 

$789 

W10 DISK DRIVE »0!l 

A-50C,iOS4i512K ftn^e 
UPGRADE {mB TotairOl^ 



/VVUGA^'iOO 



RGB COLOR PACKAGE 

•Amigi 500 w/$1 2K RAM • Bull-in ].S' Diih DiWa 
•Mou» • RGB Color Monb • Syslwn Sofbviro 
* Amiga Basic 



$699 



2500/30 



'3MB RAM • 2SMH2. • Buiil-in 3.? DiA bhra 
' 40M8 Hid Drin • Mou» . Sysim Sohaait 

'Amiga Base 



$3299 



_^\MIC^2000 

•1MBEipandaU<to9MB 

• Btilt-in 3 j' Disk Orrva 
•Mouw 

• SfVam Soft*a;9 

• Amiga Basic 

$1249 



AjVIIGA^2000 




AMIGA-2000 w/1084 
RGB COLOR MON. 

$1529 

NEW AMlGA-3000 

CALL 



RGB COLOR PACKAGE 

■ Am^a EOOO Comouter • 3.5" Disk Orwa 

. MouM ■ RGB Wor Monilsf • Symm Sodtart 



$1429 



AMIGA 2000 H.D. 

•1MB RAM • Bull-in 3.5' OiA Drive . 4DMB 
Kaid Drivt • Mouse ■ Syslan SoDwvt 
• Amiga Base 



$1799 



ADDED BONUS: W£ OFFER 1 YEAR PARTS AND LABOR 

WARRANTY ON ALL AMIGA COMPUTERS PURCHASED 

THROUGH MONTGOMERY GRANT! 



The Lowest Pricing - Lifetime Toll Free Tedrnkai Sopport ■ 

Extended Warranty STANDARD - 41/ You Expect from 

MONTGOMERY GRANT 



) 



WE WILL MEET OR BEAT ANY LEGITIMATE DEAL ON ANY AMIGA PRODUCT! 



PERIPflERALS 

1MB FATTER AGNUS 

CH1P(B372A) SaS 

A-501 EXPANSION M0DULE...S1 49 

A-1010 DISK DRIVE $129 

A-1011 DISK DRIVE S169 

A-2060 ARCNET ADAPT0R....S21 9 

A-2065 ETHERNET 

ADAPTOR $279 



A-1 084 ROB COLOR 

MONITOR ■■■$279 



A-1 930 VGA COLOR 

MONITOR Ui9 

A-208e-D BRIDGEBOAfID $489 

A-2286[)ATBHIDGEBOARD,.$1079 

A.590 HARD DRIVE S«9 

A-1950 MUILTISCAN S549 

A-2024 HI RESOLUTION 

MONO MON. (1008X800) $569 

A-2630 ACCELERATOR 

BOARD IN STOCK 



GREAT VALLEY 
PRODUCTS 

IMPACT A-aooayo $215 

2eMHz. 6M30 ACCELLERATOR 

FORA-2D00 $769 

GVP 3001 KIT (23 MHz.) 

WITH 68030, 4MB, 66882 $2029 

3001 KITw/QUANTUM40MB,$2369 
30O1 KITW/QUANTUM60MB.$2649 
GVP 3033 KIT (33MHZ,) 

w/68030, 4MB, 68882 $2599 

3033 K^Tw/QUA^fTUM 40M...$2939 
3033KITw/QUANTUM60MB,$3229 
GVP3050Kft(50MH:.) 

W/68030, 4MB, 68862 $3569 

3050 Kit W/Quantuin 40MB $3969 

3050 Kit w/Ouamum BOMB $4269 

A'20O0 HARD CMOS 

IMPACT A-2000 HC/45 $499 

IMPACT A-2000 HC/40Q,1N STOCK 

All OTHER GVF PRODUCTS 
IN STOCK 



AMIGA COMPATIBLE PEBIPDERALS 



A-MAX MAC Emulalor lof AMIG A...$109 
AMIG-A-TOSH Mac Compaitis 

Drive for A-MAX $154 

AMIG-A-TOSH PLUS |239 

A-MAX ROM $129 

CALIFORNIA ACCESS 

3.5" DISK DRIVE SI 26 

COLOR SPUTTER..IN STOCK 

FUCKER FIXER $429 

FRAME GRABBER ,....$469 

FRAME GRABBER 

SOFTWARE UPGRADE,,. CALL 

MASTER 3-A 3,5" 

DISK DRIVE $115 

MASTER 5-A 

5.25* DisK Drive $189 



BASEBOARD 

Memo™ Expansion tor A500 
(uses A-501 Expansbn Slat) 

OK $139 3MB $379 

1MB $219 4MB „„S459 

2MB $299 



MICROBOTICS 

Memory Upgrades (or A-2000 

BupOK $159 8up W/6MB..CALL 

8upw^M8„.$309 Sup W/8MB..CALL 
6)ipw/4MB.,.$449 




PANASONIC WV-1410 wlffi VARIABLE 

16mm LENS wSh IRIS $259 

PROGRESSIVE PERIPHERALS 
2MB EXPANDER FOR A-2aOO.„.4229 

SHARP JXl 00 CoiorScanner 
w/Sotiwate & Cables $729 



GENLOCKS 

GEN-ONE.$399/PnO-GEN $299 

MAGNI-40O4/4OO4S $1359 

MAGNI 4004 or 4004S/4010 $1569 

NERIKI IMAGEMASTER PRO, CALL 

OMNIGEN 701 $1369 

SUPERGEN $629 

SUPER GEN 200QS CALL 



SUPRA RAM 2000 

2MB RAM $259 6MB RAM CALL 

4MB RAM $399 8MB RAM CALL 



HEWLETT 
PACKARD 



DESKJET S51S.95 

DESKJET t $669,95 

LASERJET IIP 

w/Toner ,.,,,$989.95 

PAINTJET $949,95 

HP LASERJET III 
w/Toner. $1579 

STAR 

NX-tOOOII CM.L 

NX-tOOO 

RAIieOW CMl 

XB-24W. $439.95 

Xfl-2415. $569.95 

COLOROPTIONKITIor 
XB PRINTERS CALL 



PRINTERS 

CITIZEN 

GSX-}40 $329.95 

CXXOR OPTION 
KIT. CALL 



PANASONIC 

KXP-1180. Jt74.95 

KXP-ri9l $214.95 

KXP-U24 $289.95 

KXP-1624 $429.95 

KXP-1695. $4(9.95 

OKIDATA 

OKimTE20. 
w/Plug'nPi1nt..„.$229.95 

CANON 

BJ-I30E. $579.95 



SUPRA 2400 EXTERNAL $1 1 5 

SUPRA 2400zi 

INTERNAL IN STOCK 

SUPRA RAM 500 

(512KE)ip8n<)erfor A-5O0). $77 ,,, __,,__..___,„,.,„___„. 

VIDTECHSCAN LOCK ' CALL>"-i OTHER MODELS [N STOCK I ALL 



/NEC MULTISYNCIli&\ ^ 
VMONITOR... $649^ ^^ 



EPSON 

■flJft $(99,95 

FX-B50. $349,95 

10-510. $339.95 



MODELS DISCOUNTED! 



HARD DRIVES for AMIGA 500 



HARD DRIVES for AMIGA 2000 






iM 



EXTERML CHASSIS ENABLES AUY SCSI HARD DRIVE 
OPERATE Wmt AMIGA iOO lEXPANDABLE TO 2UBl....>S9 



THtSl 



HAKB otm nos. Asi mm mrw thi 
nmfCAiB son iHauom 

ST-157N(49MB) $499 

ST-157N-1 

(49MB, 28MS) $519 

ST-177N(60MB1 $575 

ST-1096N{80MB) $669 



W)f SUPRA 
DRIVES 



Seagate 

ST-125N (20MB) $429 

ST-138N (30MB) $459 



Quantum 



40MB (19ms) $559 

80MB 19ms) $779 

105MB (19ms) $649 

SAME PACKAGE AS ABOVE WITH XETEC f ASTTKAX EXTERNAL CHASSIS CAN 
BE BlPAiiDED TO MB RAM— ADD HfO 



HARD 
FOR 
A-500 

20MB,.."....„..^.^ $465 

40MB „ $569 

BOMB $S39 



A-1 OOO VERSIONS ADD S80 

2MB HAM EXPANDER 
. AVAILABLE I 



SUPRA HARD 

DRIVES FOR 

A-2000 

40MB 

(Quantum) $529 

80 MB 

(Quantum) $699 

105MB 

(Quantum) $789 



THESE HARD DRIVE PACKAGES INCLUDE YOUR 

CHOICE OF XETEC, TRUMPCARD OR 

SUPRA HARD DRIVE CONTROLLER CARDS 

ST-157N(49MB) $429 

5 e a Q a t e('i9MB. 28ms) $449 

-* ST-177N(60MB) $509 

ST-277N 60MB $469 

ST-125N(20MB) S349 ST-296N 80MB1 $499 

ST 138N(30MB) $379 ST-10g6hl (80MB) $599 



HAKD Dime CARD PKOA AVMUBl£-CML' 



Quantum 



I 40MB (19ms) $479 

60MBjl9ms $679 

I 105MB (19ms) $759 



Cn II licdclieck.bjnk check. money 01 dcjs. approved P,0.'t,Vm,M:*s!etcjrdDmcr'tiClub,Ani-Fx,Oplima,CjrlQtaiicIio, CO. O.'st wire Irjnafcisaccotiic-d, Please 
i.,3llx-lotcsLbmil1ingP.O.'5. No addlliOfiilsurchiiigcfoK'Cdil card orders, Non-ccjlrlLcdr;hci;ksmuslHarl4-6wt'CVsf or clearance.. Prices and avai[abr]rlV5jb' 
l.tch.irigcwrthoelnolice Nolrcsporrsibiefor lypographical errors. RelrjrnoldcrcclitferDcichandiscnruslhauepripr rclurn aulhorizalion rtumbot, or rclurnsrtill 
r .t be acccplcd Plejsc add S'a ilirpprng i harr dirng (mm. S6|- Or das over Si 200 arc discounled lo 3".. shinprni & handling Orders over S30m arc discounted lo 
• . iCanadisn orders pleasccall for shipping tales)- APO FPO oideisplcase add 1W« shipping Stiandling. All APO FPO oiclcrsare shipped (rrstclasspiioiilvaji. 
All orders csn be shipped Arr Eipiess-call lor dctarls. D.C. A aSOOZU. Amiga is a regisiercd badcaiaik ol Commodore- Amrga Inc. 

Circle 121 on Reader Service card. imx^^ 



Quick response to user requests, achieved through simple yet efficient program logic . 

Exceptional 
Conduct 



by Mark Cashman 

EVERYONE LIKES RESPONSIVE PROGRAMS, BUT HOW CAN A 
program respond quickly, even when in the middle of complicated 
operations? The answer is found in a special provision of Exec called 
exceptions. Exceptions are a task-private temporary redirection of con- 
trol in response to a signal. 



Each ta.sk has a sen of signal bits in its 
task control block. There are 32 signal bits 
contained in a longword of the task control 
block. This longword, in the Benchmark 
Modula-2 libraries, is named tcSigRcvd (for 
task control .Signals Received). Sixteen of 
these signal bits are reser\'ed for die use of 
Exec. 

Each time you call CreatePort to create 
a message port for your task, a signal bit is 
allocated for the message port (the number 
of this bit is stored in MsgPort.mpSigBit, and 
the corresponding bit is set in tcSigAlloc). 
Then, when you call WaitPort to wait for a 
message to arrive at the message port, your 
task sets the corresponding bit in tcSigWait 
and is suspended by Exec until a message is 
received. Then, when tlie message is re- 
ceived, SendMsg sets the same bit in 
tcSigRcvd, and Exec, noting that the same bit 
is set in tcSigWait, schedules die task for 
reactivation. 

It is also possible for a signal bit to 
cause Exec to invoke a task-specified proce- 
dure. This procedure is called the exception 
procedure. First, it muse be specified which 
procedure is the exception procedure. This 
is done by putting the address of the proce- 
dure in tcExceptCode. Next it must specify' 
which signals will cause die exception rou- 
tine to be called. This is done by setting the 
appropriate bits in tcSigExcept. Tlie Modula- 



2 program below demonstrates this. Note 
diat die MessagetJtii, Termination, and 
Tinier modules are my own, and tliat the 
other modules are part of the Benchmark 
Modula-2 libraries. 



.MODULE TeacExc^pc; 
IMPORT 

InOut, 

Intyicion, 

Memory, 

Messagelitil, 

Nodes, 

PorcSj 

PortsUtll, 

SYSTEM, 

Tasks, 

reraination, 

tiiser; 

FROM SYSTEM IMPORT ADDRESS, ADR, BYTE, TSIZE; 
FROM Termination IMPORT Asserc; 



EKcepcionRogtlneTY?£ - 
PROCEDURE I 



Except lonRaucine: 

Except ionRoutineTYPE; 

Iterations: 
CARDIRAl; 

KeepRunning: 
BOOLEAN; 

MindovPtr: 

Intuit ion. Hi ndowPtr; 

PROCEDURE SetKeepRunningToFaXse; 
BEGIN 



KeepRunning:- FALSE; 



Amazing Computing V5. 7 ©1990 



37 



END SetKeepRunningToFalse; 

PROCEDURE Terminate; 
BEGIN 

IF WindQwPtr i MIL 

THEN intuit.ion.CloseMi.-idowtWindowPsr") ; END; 

EJiD Terminate; 

Tasks. SignalSetiCARDIMAHWindowPcC.UserPorC.mpSigBitJ 1) ; 

£MJ> Inst^allEncepninriRoucine; 

BEGIN 

Iterations:" 0; 
KeepR-uinning:= TRUE; 

Windo«?cr;^ NIL; 

ExceptionRoutine:= SetKeepSuriningToEalse; 

Termination. EegisterProcedure {Terminate) ; 

OpenWindow; 
InstallExceptioriRautine; 

WHILE (Iterations < 100) AND KeepRunning DO 

Timer. Wait CD, 0, 1^01 ; 

INC (Iterations) ; 
END; 

IF KeepRunning THSN 

InOut.WriteString {■"Iteration termination.") ; 
InOut .HriteLn; 
ELSE 

inOut.WriteString [^Exception termination.") ; 
InOuc.WriteLn; 
END; 

Terminaticn.NcrnialTermination; 

END TestExcept . 

The program takes a common situation — detecting window 
close — ^and eliminates the step of checking die message port each 
time through the loop by replacing it with tlie checking of a boolean 
variable chat is set to false by the exception routine. 



REAL USES OE EXCEPTIONS 

This is a good way to test the use of exceptions, but it is not 
fully representative of the best way to use exceptions. Here are 
some real examples: 

A fractal generation program responding to a mouse button 
press in order to zoom in on an area; tlie exception routine takes 
control, suspending the calculation for the current pixel, while the 
user defines the area to be zoomed; tlien, after starting a new task 
to display the defined area, die calculation in the current task for 
the current pixel is resumed. 

A file name requester reading a director^^ to format a display 
of the files in the directory needs to respond when tlie user picks 
anotlier directory from the directory list; a flag is set by tiie 
exception routine to restart the directory examination process using 
the new name, 

WHAT MAKES EXCEPTIONS USEFUL? 

Basically, these examples — plus tlie program above — illus- 
trate die tliree possible uses of an exception routine; 

Terminate an iterative process. 

Suspend an iterative process for a user action. 

Restart an iterative process witli new starting conditions. 

In all cases, the advantage of the exception routine is die 
simplicity and efficiency of program logic. In the case of types one 
and three, what would otherwise be a test of the message port, widi 
the consequent o\''erhead followed by message type dispatching 
logic, merely becomes the testof a variable. In the case of t\pe two, 
the existence of the user action logic is invisible to the main loop. 
In all cases, the loops are simplified, and die checking of die 
message port only occurs when there really is a message to be read . 

•AC- 



Let ACDA Open Your Real World Window ! 

Scientific x\x\6 lingineering Products for Your Amigas! 



PROTO-40K 




Procn-'iOK is the first and only fully fcatiircU iJala-actjuisitinn and ;ir(KC5.s- control 
expansion card Rjr ;hf Am^ 2000^ 'llic PrnlrvlOK fi;:iiiircs a 16 channel 12-hit 
niuhipluxcd analtiB-iciHli^it:!! convener, two K-hit dlfliial-io-aratoK convurtcts, a y 
channd |jrouninima[>lL; linicbast:, 16 digital inputs ;ind \(^ diU'Wl ompnis. I'roio-KIK 
3I5.0 fcaiurL's j1 highly siabk' instrumunr^ition :inipllf!t.'r with pro^raminuhlc i;:iiiv 
muhiplc iriggcring sources, and on-lxjard digital waveform generation, nala aetiuisi- 
Ljon and pnxess canirc)! projects src s .snap in devclup with ihu I'ruio-'iOK Data 
.^.cquisiiion System C1>AS) software pnd 'C" source code. SatnpSe applicitiion pnigrair^ 
and source arc included For each of ihu ProtfH'IOK funaions. Xow sold in various 
custom component confiit^LJration.s. huy cMiIy the functions you need. CjII for new 
lower pricit^g. 




Amiga GPIB 




AmiRa_CtPtli is a General 
["orpose Interface ISus card 
for the Amiga 2000. 'Ihis 
halMcngtii expaasion card 
pcrFornis all ihe'lalkcr. Lis- 
tener, and ContrcDJIer func- 
tions of the COPIil OKi:i> 
'183) prnltxol. One Amiga 
c^n control up to ]4 GHH 
devices. I ncEudes Command 
1-unaion library (ACIM 
CPUS C\'\.), test application 
program andC source code 
driver. S4'^5.00 



DigiScope 



DifliScope Ls a digital stora^gc cscilloscope envuluter 
that works with ACnA's Proto-5K, Proto-IQK or 
oiherparallcl-port digitizers. liigiScopehas Ifimde- 
pendent waveform buffers^ a digital sigtial pr(Jces^s- 
ing CnSP) package, ■& Tast I'ourierTninsfarm CI'I'O 
package and a filtering package. l!Jig,iScii(>e has 
extensile w avcform saolling funaions that work In 
3 resizeable scope window in high or low .screen 
resolution. DigiScope offers a complete set of archi- 
val fijnciions and ihc standard complement of signai! 
statisUcs. DigiScope also features an extensive digi- 
tal waveform generator package. S139.95 



Shinko & Mitsubishi Preferences 
1.3 Printer Drivers 

\Vc offer 3 complete itne of thermal color printer 
drivers for the Mitsubishi and Shinko A&B siv-e color 
printers, "ihey are 100% Amiga Preferences 1. 3 driv- 
ers. SI 33.00 



AmigaView 2.0 

Amiga View is an olijen'-orienied, C language, inmt- 
linn front-end interface library that provides o\cr 
10(1 easy-to-use routines and macrtj-s. Our package 
features Vf I NIXJW.S, SCIU: t:iVS, MlAH;s, iU-Q 1 3i:S'I- 
I-WS, OArx;m"S ok AU. 'IVI'I^S (including auto- 
matic mutual exclusion), hl'IMAJ'S, ML IMAClHin', 
ll'l', '\'\'X\\ and nnuli more. This st.^ndari/cd and 
con.s;i.sieni Inuiiiion/Clraphics interface greatly re- 
duces pr(5;ifamming time and axJe space for profes- 
sional appfrcationsdevelopnienL AmigaView wtjrks 
with IxHh MANX and U'l'IICI-, See AmigaWortd 
(iJepi/Oct. iyH7, p.2ti) for review. S7P.95 



^ 



Ajniga_FFT C Package 

"llie Amij^a^l't'i'C l»ackaKe Provides :4ll the 
source >oli need to perfonn detailed fre- 
quency analysis utilizing a complete set of 
[■asi rouricr'l'r^nsfomi (l-l'O routines, 'llic 
package incIuiJes C source forderivation of 
the I'nwer-Spectrunj, Phase-Amplitude 
Spectruiii, Inverse I"]'!', .several window 
functions and user interface functions. 
SI 52.00 



ACDA Corponuion 

220 Belle Meade Aveniie 

Seiauket. NY 11733 

(516) 689-7722 



Circle 104 on Reader Service card. 



38 



Amazing Computing V5. 7 ©1990 



SNAP, CRACKLE. 



& F 



5 



FDQNG A MONITOR LIGHTNING BUG ON 
COMMODORE MONITORS 2002, 1902, & 1080 



by Richard Landry 



[WARNING: n-IE FOLLOWING hardware 
fix involves making modifications to a 
monitor equipped with 20,000 volts. 
Vndeilaking such a project can be extremely 
dangemus, and is thewfore recommended 
for the technicaity inclined only . Amazing 
Computing assumes no responsibility for any 
damages and/or injuries that may be 
incurred while performing these 
modifications.! 

A potential hardware bug that may result 
in a high-voltage discharge is prevalent in 
se\-eral early models of RGB monitors sup- 
plied for C-128 and Amiga computers. Since 
the advent of the Amiga and C-128 computer, 
a significant number of users have experi- 
enced a problem with a sudden snap, crackle, 
or popping sound accompanied by a momen- 
tary loss of picture on the monitor. Such 
occurrences are usually infrequent to start 
witli, but become more frequent with die age 
of the system. Still, in at least one case I know 
of, an Amiga 2000 system developed the 
condition almost immediately, and widi such 
intensity that the system would consistently 
crash. 

My Amiga 1000 and the associated 
monitor were purchased at a Chapter 1 1 sale, 
the first year the Amiga appeared on the mar- 
ket. The monitor occasionally cracked an 



electrical snap and, in late 1988, it gave a snap 
that evoked the Guru. The snap did not 
appear for a few months after that. However, 
in February '89, while my computer system 
was being used for a demonstration at a club 
meeting, tlie electrical snap reappeared. 
Inquiries did not provide any answers, but the 
monitor was checked over. During this ex- 
amination, it was found that taking the cover 
off caused the snapping to stop. A muffin fan 
was attached, but about a month later the 




Amazing Computing V5.7 ©1990 



39 



computer developed a condiDon w/here- 
upon it would occasionaily lock up 
■nMe attempting to sa\'e or print a file. By 
early April of "89, the frequency of the 
lockups had increased; the computer 
could barely be used for an hour before 
it locked up. A snap -ft'as obser\-ed after 
these system lockups occurred. 

Intermittent problems are the 
hardest to correct, but the problem had to 
be isolated and solved. Frank Gerard of 
ECS, an audiorized Commodore ser%'ice 
shop in the Spring Park Lake, Minnesota 
area, worked on the problem with 
several different monitors. He concluded 
that the problem was related to the red 
high-voltage wire leading from the high- 
voltage transformer to the anode cap on 
top of the picture tube. Frank sprayed a 
plastic insulating coating around the 
high-voltage transformer where the red 
wire emanated. This seemed to correct 
the problem in some of the monitors, but 
not in all. Bill Hanley, a Minnesota public 
TV station engineer, brought in some 
monitors suffering from the same 
problem. After discussing the problem 
with Frank, Bill checked several bulletin 
boards where he located information 
about a carbon trace being established 
on the monitor motherboard by arcing. 

Frank studied the bottom side of die 
modierboard and found evidence of car- 
bon traces created by shorts from a heat 
shield tab to a ground foil on several 
snapping monitors. 

There is a heat sink for a voltage 
regulator on the side of the monitor near 
the high-voltage transformer. This heat 



sink is an "L"- shaped metal plate about 
four inches high and five inches long 
which angles at the rear comer for about 
an inch along the back of the monitor. 
The heat sink is attached to tlie mother- 
board of the monitor by tvi'o screws and 
a metal twist tab tliat extends dirough the 
motherboard. The metal twist tab is very 
close to the ground foil on the bottom 
side of the modierboard and, when it is 
rsvisted, it comes very close to tlie ground 
foil. It doesn't take much voltage to 
bridge this narrow air gap. This pathway 
is on the bottom side of tlie motherboard 
and out of sight, so it seemed an improb- 
able source for the problem. 

We concluded that the large heat 
sink seems to act as a large capacitor near 
the high-voltage wire, and when the volt- 
age builds up high enough in the heat 
sink, it discharges with a small spark to 
die ground foil. Consistent discharges 
inside a dirty monitor will help build a 
trace path to the ground, increasing the 
frequency and size of the voltage dis- 
charge. If the discharge is large enough, 
the high-voltage on the ground trace will 
be reflected back through other monitor 
components and back to the computer. 
This problem seems to be prevalent on 
Commodore/Amiga models 2002, 1902, 
and 1080. 

The Amiga 1084 monitor and odier 
RGB Commodore monitors have a 
smaller heat shield and seem to have a 
better high-voltage cable path that is 
farther from possible conducting paths. 
This seems to prevent the problem from 
occurring in those monitor models. 



Frank Gerard has solved the prob- 
lem in four steps; 

1. Clip off liie shorting metal tvt'ist 
tab from the heat sink. The two screws 
can hold the heat sink adequately. Care- 
fully scrape any carbon traces on the 
motherboard created by arcing from the 
tab slot to tlie ground trace. 

2. Provide extra electrical insulation 
around the red high-voltage wire. Split 
heat shrink tubing to wrap around tlie 
high-voltage wire and use electrical tape 
to completely encase the wire -^'ith extra 
layers. 

3. Spray Keloid Clear Acrylic plastic 
around the wire and die high-voltage 
regulator to reduce leaking from high- 
voltage sources. 

4. Use TV Corona Dope to plastic 
coat the area of tv,'ist tab slot and die 
ground trace. 

A reasonable charge for having the 
above performed is about S50. 

INNER WORKINGS 

Figure One shows a view of the top 
of the L-shaped heat sink (arrow) and the 
red high-voltage wire. Note the extra in- 
sulation on the high-voltage wire in the 
area of tlie heat sink. Figure Two shows 
a view of the left rear comer on the 
bottom side of the motherboard of a 
repaired snapping monitor. The arrow 
points to a ground foil and the slot where 
the tab from the heat sink comes through 
the motherboard. This slot has been filled 
with epoxy. .^Q. 



Below: Figure One 
Right: Figure Two 





40 Amazing Computing V5. 7 ©1990 




PcdOep 



am^s 




by Gerry L Penrose 



THIS IS SIMPLY AN EXERCISE IN xMANIPULATING ARR.\YS THAT WAS DEVELOPED FROM 
doodling around with another idea. Before we get to the description of what is happening here, type 
in the program. It's quite short. For now, type in the fourth program line with the preceding inverted 
comma and the result will be a full array READ in from the DATA statements. A query appears at the 
bottom of the screen; answering yes by pressing "Y" puts up another request. Choose a cell number and 
type it in, then type RETURN. This will bring a request for an input. Type this in and watch veiy carefully, 
as the contents of the affected cells change. 



This, basically, is what happens in a 
full-blown spreadsheet: as you change the 
content of one cell, the affected cells also 
change. There is one difference though — 
in die full-sized job, certain cells have to be 
filled with formulas before any changes can 
occur. We are not that sophisticated, and 
yet this could be die basis for a quite useful 
program. In keeping widi my policy of 
supplying ideas upon which you can build, 
I leave the expansion to you. 

Now for some explanation of the 
inner workings. PRINT USING is what 
locates the contents of each cell. This 
ensures that decimal points wOl always 
shovi^ up in the right place and under each 
otlier in columns, wliich makes for a neat 
and tidy layout. PRINT" USING also forces 
the cell numbers (1^, etc.) to line up 
properly, and you will agree diat diey do 
look quite neat. It is possible to PRINT the 
five lines using only one line of code, bul 
the result appears rather ragged. When a 
program is small like this, tliere is no need 



to save b>tes Cyou have plenty of memory 
available), so indulge yourself. Always 
keep in mind tliat tliere may be dmes when 
you need everj- bit of memory you can 
grab. These are the times to conserve 
memory by line crunching, sometimes at 
the sacrifice of a little aesthetics in the 
process. 

The loop writing the cell numbers 
uses the counter 'c', adding '3' to each 
iteration of the loop and so placing our 
numbers just where we want them. The 
LOCATE x,y has been mentioned before 
and is a quite useful tool. Togetlier witll 
counters, such as the one just described, 
diere are many tilings ■^■hicli can be done 
in the ^-ay of manipulating the positions of 
various elements of your displays. 

The next loop is a case in point. Here 
we use diree counters: tlie first one, 'y'l is 
used to locate the ceils horizontally. The 
counter 'x' is also used here to set die 
vertical positioning. Finally, the countei 
'pis' adds die elements of the ceils and 



arrives at a total which we can then place 
in any position we wish, again using the 
ubiquitous PRINT USING formula. 

The next loop is a WHILE WEND 
loop, which can be used in conjunction 
with a counter and will replace the FOR 
NEXT loop. The difference becv,'een the 
two is that you can fall out of a WHILE 
WEND quite easily on command and widi- 
out dire results. The FOR NTDCF loop is not 
quite as forgiving. Nine times out of ten you 
will get away with it, but the tenth time you 
are likely to find the 'Meditation Guru' 
wasting for you. The rule would be: a 
dosed loop which must be completed 
should always be a FOR NEXT. If you want 
to sneak out of a loop before it has come to 
its natural conclusion, dien use the WTilLE 
WEND. 

This loop again uses three counters. 
This time, the 'pi' counter adds die vertical 
columns. The 'z' counter does double duty, 
first in the WHILE WEND loop and again to 
space the LOCATE elements. The 'y' 



Amazing Computing V5.7 ©1990 



41 



Ham It Up! (v. i.oi) 



▲NEW! "The Blender- 
blends and saves 
color brushes fast! 

AWorks with DigiPatnl ™ 
andDeluxePaintTM 

ASixteen charts of 
256 colors each 

ARGB&CMY values 
given for each color 

ATakes the guesswork 
out of color selection 



Displays and prints 
oN 4096 Amiga colors! 

S39 95" includes shipping & handling in U.S. 

Coll or send a check or money order fo: 

ADelta Graphics A 48 Dighton St. 

Brighton, MA 02135 A (617)254-1506 

•fuloss. lesidenrs add 32.00 soles tox 
Dealer inquiries welcome 



CIrcre lis on Reader Servrce card. 

counter counts tlie elements of each col- 
umn and is returned to zero after each go 
through the FOR NEXT loop. 

The last section, testin:, takes your 
input and places it into an array element. As 
you can see from glancing at the program, 
there is more tlian one way of filling an 
array. It can be done, as we have done here, 
using a number of DATAsiatements. While 
not very convenient, diis ser\'e.s well if you 
have a series of numbers which only need 
changing or updating occasionally. It 
means listing your program and adding or 
subtracting DATA statements as you wish. 
In producing a program such as this the 
mediod was quite useful, in that it enabled 
me to put in a little demonstration without 
writing a separate program. To change 
from the DATA entr^' to your own entr)', 
simply remove the single inverted comma 
from die front of die fourth working pro- 
gram line, the one reading 'GOTO enter. 
The second way of entering your 
elements is now open to you. If you 
run the program widi the inverted 
comma removed, you are faced 
with an array of cells containing 
zeroes which you can fill as you 
wish. As you enter each cell's con- 
tents, you will be able to note die 
changes occurring. 

A third mediod of filling such 
an array would be to import the 
complete array from a SEQuential 
or RELative file. I have covered boUi 
of these in my two previous pro- 
grams, so why not go ahead and 
devise your own method of taking 
the contents of an array from this 
program and placing it in eiclier of 
the two types of file? 



Another suggestion would be to in- 
crease die size of die array. I purposely left 
spaces beirween array elements, so that you 
could see how it was put together. It 
doesn't have to be this way you could have 
die elements abuEing each other. You 
could also enlarge tlie sizes of them — diey 
are controlled by die PRINT USING com- 
mand — and the spacing of elements by use 
of counter 'y' in the LOCATE sections. 
Experiment, but make sure you have saved 
your original working copy so Uiat you can 
get it back if you goof. 

A final -word about color. The use of 
color in a program serves to accentuate 
cenain elements ofyour display and makes 
for a more readable display than one diat is 
only blue and white. I think you will see 
what I mean by the display shown here. 
There is no need to be mediocre — use your 
imagination and have fun. 



Listing- 



'Poor man's Spread sheet 

*by - G.L.Penrose 

'Oakville, Ontario 

'Canada 

'for AMAZING COMPt;riNG 

DIM p(25) ,pls(2S),Elt25) 

,pl(25),t (25) 



start 
aS="Si 
'GOTO 
DATA 
DATA 
DATA 
DATA 
FOR i" 



■*#.##"rzS="##" 
erxer 

25. 73, 32. 98, 45. 87, 64. 56, 102, 45 
98.09,102.00,32.98,45.75,67,89 
105.75,25.00,56.98,76.54,89.78 
230.75,45.96,89.90,95.97,103.50 
1 TO 20 :READ p|i) :NEXT i 



z = O:>: = ;y=0:c=0 : 



ts^^ KMi: tMBSb iidM ism 



tnter nttr values? y/n 



Looks great— and easy fo read, loo! 



v$="PC10R MANS SPRE.^D SHEET" 

L0C.4TS 8,5 

PRINT "CELLS" 

LOCATE 4,4 0-LSNIvS) /2 

COLOR 3,1 

?r:nt vS 

COLOR 1,0 

LINE (224,33)-(400,33) 
FOR i=l TO 5 
LOa=iTE 9+i,4 
PRINT USING 25; (i+cl 
LOCATE 9+i,6 
PRINT " - " 
LOCATE 9+i,9 
PRINT USING Zi; (i+3+c) 
c=c + 3 
NEXT i 
LOCATE 8,64 
PRINT "TOTALS" 
LOCATE 16,4 
PRINT "TOTALS" 
COLOR 2,1 
FOR i=l TO 5 

"OR j=l+y TO 4+y 

LOCATE 10+x, iO+(j-y)«10 
pls=pls+p( jl 
PRINT USING aS,-p(j); 
NEXT j 
PRINT SPC(f! USING aS;pls 
y=y+4 
x=x+l 
pls=0 
NEXT i 
y-0 



WHILE Z=<4 

FOR i=z+y TO 2u STEP 4 
pl=pl+p li) 
y=y+4 

NEXT i 
LOCATE 16,10+(z)*lQ 
PRINT USING a$;pl 
pt=pt+pl 
pl-0 
y=0 

Z=2 + l 

LOCATE 16,63 
COLOR 1 , 3 
ORINT USING aS;pt 
COLOR 2,1 
WEND 



pt = 

COLOR 1,0 
LOCATE 21,10 
PRINT "enter new 



values? y/n" 



ass: 

qS-INKSYS :IF UCASES (qS) ="" THEN ask 
IF UCASSS (qS)="N" THEN CLS : STOP 
IF UCASES(q5)="V" THEN contin 
GOTO ask 



contin 




LOCATE 


21, 10 


PRINT 


SPACES (35) 


testin 




LOCATE 


19,10 


INPUT 


'Choose cell. 


LOCATE 


20,10 


INPUT 


'.Aitiount . " ,- a 


p(x) =a 




LOCATE 


19,1 


PRINT 


SPACES (35) 


LOCATE 


20,1 


PRINT 


SPACES (35) 


GOTO 


inter 



•AC' 



42 



Amazing Computing V5.7 ©1990 




Item' 

releases 




ACCORDING TO A NOTE AD- 
dressed to me via EMail on People Link, the 
new Perfect Sound version 3.0 from Sun- 
rize Industries has a couple of problems. 
First, it does not work correctly with 68020 
or 68030 accelerator boards. It cannot take 
keyboard input correctly when running 
under 68020 or 68030 mode. This causes 
the gain controls in the softw^are to not 
■^'ork right and makes other functions 
operate sporadically. The program works 
fine in 68000 mode. 

Anthony Woods of Sunrizc has said 
tliey are aware of the problem and are 
working on it. Also, AudioMaster II from 
Oxxi/Aegis Development does not support 
the latest version Perfect Sound. A call to 
Oxxi confirmed that fact, and they com- 
mented diat diey are currently in develop- 
ment of AudioMaster III .which does work 
just fine with Perfect Sound 3.0. It should be 
ready sometime in July according to a 
spokesperson. 

She commented that the upgrade fee 
for currently registered AudioMaster II 
owners would probably be about S25 or 
S30 Contact Oxxi directly about die up- 
grade. As far as a Perfect Sound 3.0 soft- 
ware upgrade to r\in on the 68020 and 
68030, Mr. Woods advised tiie writer to 
check back with him in about a month as 
it should be ready by then. He expected 
tliat there would be no charge for regis- 
tered users to receive tlie upgrade/bug fix. 
Sunrize Industries, Box 1453, College Sta- 
tion, TK 77841, (409) 846-1311. Inquiry 
^200. 

scon BUSSE WROTE AN EMAIL 
letter regarding the problems I had re- 
ported ^'ith incompatible ANIM formats in 
an earlier Bug Bytes. It seems that minor 
differences in the ■^\'ay animation generat- 



ing programs store ANLM files are causing 
problems when graphic artists try to load 
ANIMs into different applications from 
which they were created. Scott offered a 
solution to the problems in a shareware- 
program. The Animation Bridge is a S 20.00 
shareware program diat currently supports 
Anim-5 files created from: 

Photon Paint2.0 The Director 

Videoscape 3D Movie2.0 

.Animation: Editor(vl. 11) Gel Animator 
DeluxePaint III Turbo Silver 3.x 

AnuMagic Page Render 3D 

Animation Station Sculpt- Animate 4D 

According to Scott, the program will 
save the files from the above programs in a 
format that can be read into; 

DeluxePaint III The Director 

AniMagic Animation: Editor (vl. 11) 

Animation Sution .Movie 2.0 

The program will also play A.\IM files 
of any variation within die Anim-5 spec. If 
the animation program you are using isn't 
on ilie above list, chances are it doesn't 
need fixing. Contact Scott via CompuServe 
ID 73040,2114 for more information. 

SINCE THE AiNNOUNCEMENT A.ND 
pre-release of the Amiga 3000, 1 have been 
getting letters and electronic mail rejiorting 
problems widi programs that don't work 
under Workbench 2.0, or under the spe- 
cially modified Workbench 1.3.2 that is 
currendy only available on these early 
production dealer demonstration units. 

The A30OO systems diat dealers cur- 
rently have do not contain operating sys- 
tem ROMs like the Amiga 2000 and 500 
series. Workbench (eidier 2,0 or 1.3.2, if 



John Steiner 



desired) is loaded into RAM from the hard 
disk at present as the version 2,0 operating 
system provided witli these units is still in 
pre-release state. Further, upgrades have 
been promised by Commodore to be 
shipped on a monthly basis to the dealer- 
ships that have demonstration Amiga 3000 
systems, 

"WTien Workbench 2.0 is finalized, it 
will be committed to ROxM and all of the 
pre-release version 3000s diat dealers have 
will be upgraded to full production unit 
status. At the Amiga 3000 introduction I 
attended in Chicago, a Commodore repre- 
-sentative commented that there could still 
be deletions and additions to tlie features 
that are being included in Workbench 2.0. 
Even the Workbench 1.3.2 that has been 
patched into the 3000 is also somewhat 
non-standard, and will not be part of the 
A3000 when 2.0 is finally released so there 
may be problems with running current 1.3 
applications that work fine on other sys- 
tems. 

As a result of the currently unfmished 
nature of the A3000, 1 have decided that it 
serves no useful purpose to point out 
problems with currently-available software 
on the beta version 2.0 operating system, or 
on the Workbench 1.3,2 that won't be 
available on the production units. I would 
expect that many of these problems will 
disappearwhen 2,0 matures to final release 
state. It would be unfair to the developers 
of existing software to point out problems 
with their software that may not even be 
there when end users are finally able to 
purchase die A3000. 

The confusion and possible lost sales 
would only be a detriment to the .Amiga 
development community, especially when 
tlie problems may be fixed before die 
computer is available for sale to the general 



Amazing Computing V5. 7 ©1990 43 



AudioLink 



16-bit Linear Stereo 

Audio Processor withi 

Sound Sampling Capabilities 




Beta Unlimited 

87 Summit St. Brooklyn, NY 
11231 



Clrcre 126 on neadeT Service card. 



public sometime in July. Besides, in my 
o'^vTi testing of the A300O under Work- 
bench 2.0, it might take less space to list 
those programs that work 100% than to list 
those dial don't. A lot of software has 
problems at tliis point, which is probably 
why Commodore went to the work of 
patcliing 1.3.2 into the A3000, It allows 
dealers to be able to demonstrate working 
applications on the computer for prospec- 
tive customers. 

Once version 2.0 is a\'ailable in ROM, 
companies with sofhvare that still have 
problems under 2.0 will have to deliver 
upgrades. I am expecting that a lot of 
programs will need minor "tv^'eaking" to 
make them work 100% under the new 
system. Expect a flurry of upgrade notices 
here in Bug Byies o\'er the next few months 
as developers complete tliese upgrades. As 
of this writing, Workbench version 2.0 
upgrades for existing 2000 series comput- 
ers won't be available until September 
according to a Commodore press release. 

There seems to be some confusion 
about being able to upgrade A500 systems 
to the 2.0 Workbench, as Commodore 
didn't specifically mention them in the 
press release. Other material I received 
from Commodore stated tliat the A500 
upgrades would be available "at a later 
date." Some people have become upset 
over a concern diat since tlie A500 is going 
into the mass market tliat Commodore 
didn't plan to upgrade the units to run 2.0. 

"There is reason that Workbench 2.0 
features cannot be made available for the 
500, and there is no benefit for Commodore 
to refuse to upgrade the Amiga 500 systems 
currentlv in ser\'ice. Version 2.0 will be 



worth the wait, let's give them time to get 
it working right before it's released. 

OXXI, INC. HAS ANNOUNCED THE 
release of version 1.5 of VideoTitler version 
1.5. According to a press release dated April 
20, 19SX), die new version includes 3D text 
manipulation, built-in animation facilities 
and a re-designed user interface. The pro- 
gram now allows text to be stretched into 
various 3-D perspectives with die use of 
"handles." 

An "Extrude" Hinction works witli die 
program's Poly-Fonts to allow text to take 
on the properties of objects which can be 
stretched, spun, rotated or distorted. Ani- 
mations allow text to spin, circle and 
change colors in any direction and length. 
Key frames are generated diat allow die 
user to specify die start and end points, and 
the program will generate all of die in- 



j SPOC DIGEST 

Magazine-type demo disk 

Useful programs, fun and games 
from around the worid plus 
interesting articles, news and ideas 
for your AMIGA. Contains much 
more than magazines costing 
$15.00! Also, info on our SPOC 
DISK, along with free programs 
from this disk. Just send $5.00 to 
help cover the cost of this ad to: 

SPOC 

BOX 299 

KIOWA, OK 74553 

Circle 1 12 on Reader Setviee card. 



between frames. An improved user inter- 
face makes animadon generation much 
more easy to accomplish and a new "tool 
box" gives the user instant access to a 
variety of commands without using puU- 
downs. 

AddiUonally, the program now 
comes widi Lights! Camera! Action!, a pres- 
entation generation utility at no extra 
charge. The program should be shipping 
by the time you read diis at a retail price of 
SI 59. 95. Registered users of die current 
version 1.1 or earlier may upgrade direcdy 
from OXXI for S34.95. Lights! Camera! 
Action! can be included with the upgrade, 
the total price is S39.95. While I was con- 
fuming informadon about Oxxi's upgrades 
this month, I was asked by their technical 
support person to make a couple of com- 



ments regarding MaxiPlan. Intuidve Tech- 
nologies is the company that markets 
MaxiPlan III. I have commented in previ- 
ous Bug Bytes columns that people have 
had trouble obtaining adequate technical 
support from Intuitive Teclinologies. O.xxi, 
Inc. is currently marketing both Maxi Plan 
500 and Maxi Plan +, which were both 
written by the same person who wrote 
MaxiPlan III. Oxxi has been getting lots of 
calls wanting to know why diey aren't 
supporting their products, or demanding to 
know die status of their upgrade orders. 
Please note diat Oxxi is currently support- 
ing dieir products 100% and diat diey want 
our readers to knew lliat Intuitive Tech- 
nologies is not the same company as Oxxi. 
If you are a registered owner of eidier 
MaxiPlan 500 or .MaxiPlan +, (currendy in 
versionl.9) you may obtain technical sup- 
port direcdy from Oxxi at the number listed 
below. I wish to apologize to Oxxi for any 
confusion this has created for them. I was 
not aware that any other company -was 
marketing MaxiPlan in any other format 
than MaxiPlan III from Intuitive 
Technologies. Oxxi, Inc. Box 90309 Long 
Beach, CA 90809-0309. (213) 427-1227, 
FAX (213) 427-0971. Inquiry =^201. 

That's all for this month. If yoti liave 
any workarounds or bugs to report, or if 
you knov,' of any upgrades to commercial 
software, you may notify me by wridng to: 

John Steiner 

c/o Amazing Computing 

Box 869 

Fall River, MA 02722 ... 

or leave EMail to Publisher on People Link 

or 73075,1735 on CompuServe ^ . „_ 



Memory 
Management 

Amiga Service 
Specialists 

Over three years experience! 

Commodore authorized full service 

center. Low flat rate plus parts. 

Proudly affiliated with . . . 

The Memory Location 

396 Washington Street 

WelIesley,MA 02181 

(617) 237-6846 



C'\rzlB 13G an ReaasiT Service card. 



44 Amazing Computing K5. 7 ©1990 



PDSi 



ef^&fi^ 



dipita^ 



Insight 

into the 

World of 

Public 

Domain 

Software 

for the 

Amiga^ 



THIS MONTH I WOULD UKE TO TAKE A 

brief look at some editors: IE, an icon editor; 
A2, a text editor; and MED, a music editor. 

A2 V 1 . 50 — an update to version 1 .40 
on Fred Fish disk *228 — appears on Fred 
Fishi dislt *346. Tlie upgrade includes some 
new features in addition to bug fixes. 

AZ is a text editor, meaning the files it 
produces can only contain characters. The 
Files created can be assembled, interpreted 
or compiled as they are. All the characters in 
the active keymap (up to 256) can be 
entered. 

AZ allows you to open as many 
Windows as needed. The number of Win- 
dows allowed is limited only by the memory 
avaOable. iMultiiasking is supported. You 
can start a job in one window, let that run, 
then start working in anotlier. 

There are two versions of AZ, the big 
version and the short version. Hie differ- 
ence is in the big version, the FileRequester 
code has been included in the code at link 
time; therefore, no installation — ^just dick 
on AZ's icon. To install the short version, 
simply copy the "isup.library" into your 
UBS: directory. 

AZ utilizes the function keys and 
supports simple quick key commands, such 
as <Amiga> <Q> to quit. It also allows the 
use of die <option> key plus another key to 
toggle between colors, length of a line, etc. 

I found this program and the manual 
easy to use. The manual includes a list of all 
changes made through the updates, and ex- 
plains the program very well. 
Author Jean-Michel Forgeas 

The next program is an icon editor, IE 
VI. (FFD 342). IE creates icons up to 



640X200 pixels, handles creating and edit- 
ing of dual-rendered icons, and allows you 
to preview the icon before ending the pro- 
gram. 

I found this program lots of fun to 
experiment widi. Youdrawwithaniconin 
the shape of a paint brush, selea from one 
of the four different colors available, and 
create your personalized icon. 

Some features include "Flood Fill", 
which fills in the selected area with the 
chosen color, and iconify. Another feature 
lets you copy the image and then clioose 
one of the rendering options, "non-select" 
to select, or "select" to non-selecL This 
makes your icon appear to move when 
clicked on. Use preview mode to test your 
icon. 

A new version of IE is in the works. 
Possible features will let you read IFF pic- 
tures as icon bitmaps and write icons as IFF 
pictures; also, a better file requester will be 
added. Author: Peter Kiem 

MED V2.00 (FFD 349), an update 
from VI. 12 on FFD 255, is a music editor 
which helps you create songs. Some fea- 
tures and bug fixes include a new player 
routine made with Assembler, fast screen 
rendering routines, new user interface with 
file requester, MIDI support and up to l6 
tracks, insert/delete blocks, extended key- 
board, and song packing, to name a few. 

MED is similar to tlie public domain 
program SoundTracker and supports some 
of SoundTracker's features, and more. 
MED is written in C (Lattice C V5.04), 
except for the most important routines 
done in Assembler. MED supports multi- 
tasking and you can play songs created 
with it on MEDPlayer. 
Author: Teijo Kinnunen 



by Aitn^e R Abren 



Amazing Computing V5. 7 ©1990 45 



THE DYNAMIC RIFF SEQUENCER 



i^YPERCHOR^ 



by Hologramophone Research 



Ejpj'^'^ "t"rintpoiJT 



[|H.„|lli|.lc|.l<lll|Hni|nih|..|..|ii.|ni|..i|.<m|'^in['l*i.|.i|«<i.i|..l|| 



^\y 




niiimiiiiiiiiiiiT 




Turn your Amiga into a powerful newinstrument 
with Hyperchord'" , the dynamic riff sequencer. 
Create themes, from simple scale runs to 
complex "Riff Waves," using original Hg 
functions such as Smear, Rotate, Weave, Reverse, 
and Mix. Change pitch, speed, rhythm, 
harmonies and orchestration. For intense riffing, 
switch between 60 user-defined scale modes 
and 40 rhythms, or employ unique cyber-musical 
tools such as Holistic Play and Vector Play. Store 
for real-time playback or record performance. 
Disk includes three Hyperchord utilities: Mode 
Maker, Rhythm Maker, and Holistic Window. 



Hologramophone's 



e 



moyfi 



3 



TM 



THE MUSICAL GRAPHICS PLAYER 

Lister} to a Lichtenstein! 

Pufound™ is new kind of musical instrument as 

well as a powerful MIDI controller (uses Amiga 



sounds too). Load up any^ 
image or use Pixound's/ 
generators. Invent a new J 
ment with every screen. 



graphic 
screen 
i n s t ru - 
then play 
it with the 
ouse. Create 
shimmering 
bursts of notes 
or slow, lyrical 
harmonies with 
the touch of a 
key. Save your 
work either as a musical sequence or a screen- 
or both. Great fun for the beginner; endless 
challenge for the virtuoso. 

circle 109 Dn Reader Service card. 



"^y Hologramophone 
W\ Research 
WJ 6225 S.W.I 45th Street 
^^ Miami, Florida 33158 




Rof LIchlmtLaln "Wsnin SltUng Dn p Chrk' 



UPDATES 

SOFTFONTS 

Softfonts (FFD 342) is an update from FFD 327. It converts 
portrait soft fonts for HFLaser-jet compatible laser printers to 
landscape format. 

Softfonts works through Intuition or through the CLI. The 
major update corrects a fault wid: bitmap rotation. Includes source. 
Author: Thomas Lynch 

CROBOTS 

CRobots V2.3w CFFD 345) is an update to V2.2w on FFD 331 . 
CRobots is a game based on computer programming, Gameplay in- 
volves designing and writing programs (in C) to control a robot 
whose mission is to find and destroy oclier robots. All robots are 
equally equipped and up to four robots may compete at once. 

Changes include added checks for files being write/read/ 
delete protected, improved IF-THEN generating section of the 
compiler, and new flag "NOWAIT" to turn off the "press any key 
to continue" messages. This allows complete operation from within 
a script. 

CRobots consists of a C compiler, a virtua! computer, and 
battlefield display. Requirements are 5I2K, DOS 1.3, ARP1.3 and a 
text editor. Includes binary only. 
Author: David Wright 

GET IMAGE 

Get Image (FFD 345) is an enhanced version from FFD 14. This 
utility program converts DPaint brushed into C source code as 
image structures. 

Changes include setup of the Plane Pick value in die Image 
structure, and deletion of any unused bitplanes to save memory and 
disk space. Includes source. 
Author: Mike Fanvn, enhancements by Chuck Brand. 

MEMFRAG 

MemFrag (FFD 345) is an update from FFD 69. This program 
displays number of memory chunks/sizes to show memory frag- 
mentation. Chunks are displayed as 2**N bytes. Includes source. 
Author: Mike Meyer, enhancements by Gary Duncan 

UNSHAR 

UNSHAR VI. 3 (FFD345) is an update from FFD 287. Unshar 
is a utility diat extracts files from UNIX share archives. 

Some changes include a bug fix in "Overwrite (Yes, [No!], 
Alt)" prompt and a bug fix in code to skip existing files. Also, Unshar 
no longer exits inimediate!)' on file read error. Includes C source. 
Author: Eddy Caroll 

TEXTPAINT 

Text Paint (FFD346) is the second major release of the ANSI 
editor. Enhancements include the possibility to reload ANSI files or 
CLI modules, 4 color option, optimized keyboard layout, new 
drawing modes, right mouse button support, etc. 
Binary only. Author: Oliver Wagner 



•AC- 



CES: Chicago '90 

Commodore Dynamic Total Vision & More! 



by Andy Patrizio 



THE SUMMER CONSUMER ELEC-tronics 
Sliow (held tliis year on June 2-4 in Chicago) 
annua liy features products tliat represent at least 
the early fruition of stunning new break- 
throughs in teclinoSogy. It is an exposition 
dedicated to introducing these products to both 
industry buyers and memljcrs of the press. 
Commodore's presence at CES tliis year pro- 
foundly underscored tlieir commitment to pro- 
viding the most inno\'ative of computer tech- 
nologies to the consumer markets. 

It was here, in small enclosed area witliin 
their larger display, that CBM introduced the 
Commodore Interactive Graphics Player, a 
small dev'ice already described by .some as being 
perhaps tlie next great intellectual appliance. 

Commodore has created a single new 
technology from uvo existing ones — laser disc 
technology, and the multimedia capabilities of 
tiie Amiga. This new technology — Commodore 
D\'namic Total Vision — is incorporated in the 
new Commodore Interactive Graphics Player. 

One thing should be stressed about the 
CDTV player: it is not considered a computer, 
nor is it a compact dt.sc player. ^Mthough ii has 
tlie internals of an Amiga computer, and is 
capable of pla)'ing compact di.scs, CDT\' repre- 
sents not so much a step forward in technology 
as a sidestep onto a brand new path. 

In CDT\'', Commodore has created an 
entirely new market by joining CD technology 
with jVmiga power in a component featuring a 
simplified interface. The interface is designed 
not to scare olTthe otherwi.se computer-phobic 
user. In fact, the simplified interface centers on 
perhaps the most familiar hoine electronic 
device in use today — the remote control! 

No monitor, keyboard or mouse is 
needed. The CDTV player connects to a televi- 
sion, and witli tlie remote control, it can operate 
and access a 550-megabyte CD-ROM drive. A 
variety of CD reference libraries are already 
under development, including the Bible, a 
cookbook, and an encyclopedia. As you might 
imagine, with CDTV these resources can now 
include sound and animation. 

THE BIRTH OF CDTV 

CDTV was officiaiiy unveiled at C.E.S. on June 
4 by CBM Chairman Harr>- Copperman, along 
witli Irving Gould, Chairman of the Board, Com- 
modore International, and Nolan Bushnel!, 
whose name is synonymous witli computers. 

Now the General Manager of Commo- 
dore's new Consumer Interactive Products divi- 
sion, Mr. Bushnell created the first video game 
ever — "Pong"— back in 1972. He went on to 
found the Atari Corporation and the Chuck E, 
Cheese "pizza theater" restaurants for children. 



Declaring his high aspirations for the 
rmichine, Mr. Bushnell said "It's going to be in 
the home, it's going to be in the school, it's going 
to be in industr)', its going to be everywhere." 

The technology' actually makes the ma- 
chine "a 21st century librar\'," he noted. Now, a 
person will be able to see and hear a digitized 
audio/visual recording of Martin Luther Kings "I 
Had a Dream" speech, instead of only being 
able to read it from a page. 

CDTV will be released in September, witli 
a selling price of S899 — rather e.vpensive for a 
CD player. But as Bushnell points out, "We now 
have, for tlie first time, an Amiga platform 
wrapped around a compact disc." 

Mr. Copperman also announced CBM's 
plan to put a separate sales force in place 
specifically geared toward schools, to quicken 
tlie mox'e of CDTV into die educational rrutrket, 
as well as to take orders directly from schools in 
an attempt to increase Commodore's share of 
tliat vital marketplace. 

Designed to look like a VCR, the CDTV 
player will fit right in witli a stereo, receiver, 
amplifier and television as one component of a 
total entertainment system. When not function- 
ing as an Amiga , it can play all musica 1 compact 
discs, with 8X oversampling. The player 
operates as a computer internally, but it is used 
like a stereo component externally. Now, any- 
one has computer capabilities. 

irSAN AMIGA, TOO 

For users vjho do want standard com- 
puter access, add-on peripherals make tliis an 
Amiga 500 with one meg of RAM. Peripherals 
include a keyboard, mouse and drive and t!ie in- 
frared bus. A trac ball is also available. Each 
peripheral wili sell for under S50 except the 
external floppy drive, which will sell for S199. 

All of the peripherals (except the drives) 
are wireless, and communicate via infrared 
signals, To permit operation of several devices 
on tlie CDTV player, the mouse, joystick and 
keyboard all .send their signals through the 
"brick," since multiple infrared devices can 
easily have tlieir signals crossed. 

As for a monitor, tlie CDTV player comes 
with RGB output, PAL output and NTSC output; 
it was very inexpensive to offer all options. Tlie 
player also has a few added features. One is a 
MIDI in/out pon that can be factory installed. 
Anotlier feature is a DMA slot, for hard drives or 
SCSI controller cards. 

Some compromises have been made — as 
of press time, you will not be able to piay your 
favorite Led Zeppelin CD and utilize the 
external floppy disk drive at die same time. And 
tliere is no 86-pin bus as on the regular A500, so 



expansion is limited . But tlie machine does have 
open architecutre for fumre expansion. Once 
the industry establishes a standard for full mo- 
tion video, you will be able to adapt your CDTV 
player. 

The benefits of using CD technology are 
obvious. Software companies no longer have lo 
worry about dieir products being pirated. Users 
don't have to deal with VirusX or DiskDoctor to 
fix infections or bad sectors. Program develop- 
ers get lots of extra space to design incredibly 
larger, more complex, more interesting and 
useful games and applications, with 550 racg. 

While CDTV is an attempt to create or 
define an entirely nev,' market, llie player is still 
an Amiga, and Amiga users will be able to utilize 
the CDTV software on their present tnachines. 
Because tJie CDT\' player has a 68000 chip and 
one meg RAM, it was not developed for high- 
level \'ideo work, aldiough softsvare may te de- 
veloped for that purpose. 

Therefore, Commodore will release a 
CD-ROM peripheral shortly after the CDTV 
player to use programs made for CDTV on any 
Amiga, save flie AlOOO. The CD-RO.M— along 
witli an A2500 or A3000 — probably remains a 
better choice for tliose who want CD-ROM 
sofPA'are for high end multimediaA'ideo use, 
since the player as a computer is very limited. 

The CDTV player was developed to be as 
little like a computer as possible, b>oth in terms 
of its appearance and 

its operation (that is why it was unveiled at 
C.E.S. and not Comdex). This is not for the 
power user or flie cable television station. 

NOT FOR THE COMPUTER MARKET 

Because tlie player is not being marketed 
as a computer, don't look to your local dealer. 
The target retailers will be liigh-end audio/video 
retail dealers, department stores and selected 
retail chains, although Just who diese are has yet 
to be specified. 

Commodore recendy started the Com- 
modore Express service for tlie Amiga 500, and 
the CDTV player will also be supported by this 
service. A 24-hour, toll-free "800" line is avail- 
able for any problems a purchaser may encoun- 
ter, and CB.M has teamed widi Federal Express 
to provide door-to-door pick-up and delivery 
for any repairs covered as part of tlie new 
ser\-ice. 

CDTV's target market is a new one spe- 
cifically created witli the birth of this new 
machine. With the interactive reference data- 
bases now under development, the Commo- 
dore Interactive Graphics Player will look and 
perform like sometliing from the set of "Star 
Trek." 



Amazing Computing V5. 7 ©1990 47 



Above: Commodore Interactive Graphics Player motherboard. 
Below: CDTVplay&r with optional peripherals. 




For example, one program will be based 
around die Silver I'ackette Cookbook. If you 
plan a meal for sLx guests, and nine show up. the 
player will recalculate the proportions needed 
for tliat number of guests. If you are out of a 
required seasoning, it will suggest alternates. 
And for European users, tlie machine converts 
U.S. measurements into Metric. 

CBM's idea is to bring computer power to 
that portion of the consumer market tliat has so 
far sliied away from 
computers. Considering 
Amiga's audio/ visual 
strengths and the fact 
that operating CDTV is 
as easy as changing 
channels on a television 
with a remote, this idea 
appears to be a winner. 
Having taken the look 
and normal operational 
procedures of most 
computers out of this 
machine. CBM may \'er>- 
well succeed in attract- 
ing buyers who normally 
would not touch a com- 
puter. 

Commodore 
estimates over one 
hundred titles will be 
available by release time 
in September, and 
double that number by 
Christmas. The discs are 
expected to sell for 
around S30 to SlOO, 
depending on the pro- 
gram. 

Commodore 
Business Machines 
1200 Wilson Drive 
West Chester, 
PA 19380 
(215)4,-51-91O0 
Inquiry # 336 

Amiga Entertainment 
Software at CES 

Games and entertain- 
ment software appeared 
to be the main computer 
application available. 
Here is a few of tlie CES 
anendees and their latest 
entries into the Amiga 
market 
Accolade 

Jack Nick- 
latts' Vnlimtted Gt>lf&- 
Course Design is de- 
scribed as the complete 
golf experience, contain- 
ing all the realistic ele- 
ments of championship 
play as well as all the 
tools needed to design 
challenging and visually 
stunning holes and 
courses. Included is The 
Bears Track, an 
oceanfront 18-hole 
course designed by Jack 



48 Amazing Computing V5.7 ©1990 



Nicklaus and his (earn exclusively for tliis prod- 
uct, and a re-creation ofMiiirfield Villeige, a Jack 
Nicklaus designed course and site of Tlie 
Memoria! Tournameni. Due in Scpteml>er. 
S59.95. Inqulr>'#271 

lSHIDO:Tbe Way of Stones provides 
one or more strategists witli ilie eliallenge of 
accurately placing a pouch of 72 stones on a 96 
st]uare game board. Each stone is decorated 
with a symbol and a color.and can only be 
placed next to another stone that iTuitches either 
it's symbol or color. As the board fills with 
Stones, the game becomes more complex as 
players are faced with miuching two, three, and 
even four sides of some stones. The most 
desirous move, and the most difficult, is a "four- 
way" where one stone is matched on all sides by 
fouroUiers. BesiStralefi)' Came of 1989- Due in 
July. S49.95 Inquiry # 272 
Accolade 

550 South Winchester Ekd. 
SanJose,C\ 95128 
(408) 985-1700 
FAX (408) 246-0885 

Capstone 

Tom Clancy fans will be psyched to know 
tlieir fa%'orite author ha s another title cocning out 
as a computer game. Tlie Cardinal of the 
Kremlin , due this September. You must find a 
missing SDI scientist and protect "The Cardinal," 
America's most secrei spy in iUissia. Glasnost, 
anyone? SA93S. Inquiry # 273 

Bill and Ted's Excellent Adventure 
will feature digitized films and sounds from the 
acnial movie, and is scheduled to be released 
around tlie same time as the sequel tltisjulv. EX- 
CELLENT! S39.95 Inquiry # 274 

Anotlier arcade tninslaiion to computer 
screen is Superman. !f it looks as good as die 
arcade version, tiiis will be a great one- or two- 
player game. S39.95. Inquir>'#275 

For ali you gamblers, Trump Castle will 
provide the ultimate in casino simulations. The 
game will feature blackjack, roulette, craps, 
keno, and nine different slot machiites. S39.95- 
Inquiry # 276 
Capstone A division of 
IntraCorp,Inc. 
14160 S.W. 139th Court 
Mianil, FL 33186 
(305) 252-9040 
(800) INT-RACO 
FAX (305) 255-1205 

Data East USA, Inc. 

Thu Dreum Tvani: 3 On 3 Challenge . 

All-pro basketball players I'airick Ewing, Dom- 
inique Wilkins, and James Worthy in a fast 
paced three-on-tliree style basketball game. 
Direct access to instant team and individual 
player stats, dirough a direct modem to Lt.SA 
TODAY'S Sports Center to keep game play as 
clo.se and as exciting to the real thing as pos- 
sible. To be released in late fall. Inquiry # 277 

Bo Does Baseball provides instant ac- 
cess to real statistics just as the otlier .MVP Sports 
simulations games. This feature offers computer 
games with a unique, more ime-lo-lifc sports 
experience, .•\ueust. S39.95. Inquiry # 278 

ABC's Monday .Wight Football (Ver- 
sion l.S). The complete line up of Data East 
MAT Sports pro\-ides an 'in the game" play 



COMMODORE INTERACTIVE GRAPHICS PLAYER 


Technical Specifications 


Rear Ports 




Centronics Parallel interface 


CPU Motorola 68000 


RS-232 Serial interface 


CPU Speed 7, 1 5909 MHz (NTSC) 


External floppy disk drive 


7.09379 MHz (PAL) 


interface (Amiga floppy 


Memory 1 megabyte chip RAM 


disk drive compatible) 


2K non-volatile RAM 


Hardwired alternative to IR 


(reserved for system- 


for keyboard, mouse, joystick 


clock, prefs, etc) 


2 audio output ports (RCA-type 


512KROM 


plug); requires external audio 


Internal Slots intelligent video slot Vhf/15 


amplifier 


pin edge connector (for 


MIDI In/Out 


optional genlock. 




RF board, etc) 


Front Port 


Video Outputs 


Stereo headphone jack 


digital RGB.anolog RGB (DB- 


Port for optional personal RAM 


23 connector) 


card (up to 64K) 


composite video NTSC or 




PAL (RCA-type connector) 


Front Panel Controls 


component video Y-C (S 


Power On/Off 


connector type for S-VHS 


Headphone volume Up/Down 


and Hi8) 


Ploy/Pause 


RF moduloted (F connector) 


Stop 


optlonalgenlock capabilities via 


Forward/ Reverse and Scan/Skip 


plug-In module; three-mode 


CD/TV 


(CD, video source or mixed) 


Reset 


under software control 






Operating System 


CD ROM Drive Specifications 


Amiga Kickstart 1 .3 in ROM 


Sony/Phillips type CD-ROM standard 


ISO 9660 File System Handler 


mode 1 , mode 2 


High-speed decompression for 


Data readout from disc 


graphics, audio and other 


153 KBytes/sec (model) 


dato 


171 KBytes/sec (mode 2) 




2 Megabytes/sec (burst) 


Infrared Remote Unit Specifications 


Ave ra ge access time .5 sec ond s 


1 function keys plus Shif- key (20 total) 


Maximum access time 0.8 seconds 


Up, Down, Left, Right movement buttons 


Standard supported ISO-9660 


Two select keys 


Dota capacity opprox, 550 MB 


CD Audio Ptay/Pouse, Forward, Reverse, 


(equivalent to about 


Headphone Volume and Stop keys 


700 Amiga floppy disks) 


Computer reset function 


CD Audio Specifications 


Optional Accessories 


Sxoversampling 


External floppy disk drive 


Frequency response 20-20KHz 


Trackball (infrared) 


Maximum audio capacity about 1 4 


Joystick (Infrared) 


hours— AM quality 


MIDI In/Out, through (third 


Sample rate variable from CD audio 


party) 


rate (44KHz) to 6KH2 


Personal RAM or ROM card 


Duo! 16-bit D/A converter plus 10-bit of 


Genlock 


attenuation 


Expansion module to house 




hard disk drive, modem, 




floppy disk drive 




Keyboard IR (infrared) interface 




Keyboard 




Two-player IR interface 




Modem 




Printer 



perspective, Willi improved broadcast-style 
statistics, players can keep track of the scoring 
drive, including downs, yardage stats, looses, 
and pass completions for more accurate game 
play. August. S49.95. Inquiry # 279 

Super Hang On is a fast-paced motor- 
cycle racing game that lakes players on a gruel- 
ing motorcv'cle circuit that spans the globe. 
Game points are avvarded for o\eRill jirecision 
driving in distance, speed and course comple- 



tion, Piayers receive bonus points for finishing 
a "perfect ran." S44.95. Inquiry # 280 

North & South ^" is a new strategy game 
widi four stages of battle, players control differ- 
ent numbers of armies and territories, launch 
attacks and travel from state to state as they 
confront and conquer battle challenges in an 
effort to win tJie war. S44.95. Inquiry #281 

(continued on page 74) 



Amazing Computing V5. 7 ©1990 49 




A 



Getting To The Point: 

Custom Intuition 
Pointers in 



'f AmigaBASIC 



by Robert D'Asto 

AFTER PROGRAMMING WITH AMIGABASIC FOR A WHILE, IT BECOMES APPARENT THAT THERE IS NO 
direct method for including a customized mouse pointer within application programs. Of course, it is possible 
to alter ilie pointer with Preferences, but tliat only changes its appearance on your machine. When the program 
runs on a d ifferent Amiga, the pointer will appear as it has been set up on that particular machine. It's my guess 
that most users stick with the default pointer provided by Intuition or something very similar. 

It's not that there's anything wrong with a little red arrow. It's actually a very good one-size-fits-al! sort 
of compromise, but there are situations where other types of objects would be more suitable or just more 
attractive. Changing the form of the Intuition pointer to suit a particular application can significantly enhance 
the program's utility, ease of use or simply because it looks nice. 



If, for example, a paint program was being 
written, w^ouldn't it he nice if tlie pointer were 
rendered as a pen or paint brush? Or, how about 
a cross hair type object for those arcade shoot'em 
ups? Or, maybe a pointing hand or flashlight for 
making menu selections? The possible variations 
are endless. Look at tlie good effects customized 
pointers make in commercial and PD software. 

Customizing tlie pointer witli Amiga-BASIC 
is actually prettj' easy. All it takes is a few library 
routines and a little knowledge of the makeup of 
your pointer. 

The mouse pointer is a sprite, created and 
maintained by the section of the operating system 
known as Intuition. A sprite is a special kind of 
animated Amiga object which can be further 
divided into m-o types: hardware sprites and 
virtual sprites. It isn't necessary to get into all the 



technical details of these objects here, so just be 
aware tliat a sprite (either kind) is a graphic object 
which can be animated and must adhere to certain 
physical restrictions. It can be no more than 16 
pixels wide, though it can be as high as the entire 
display screen. Sprites are also limited to four col- 
ors, one of these always being transparent. Ge. the 
same color has your background) 

The difference between tlie two types is that 
only eight hardware sprites, numbered to 7, can 
be defined at any one time. Virtual sprites have 
limitations as well, but diey not pertinent to the 
scope of this article. Anyone who has ever made 
sprites with the ObjEdit program on the Extras disk 
has seen virtual sprites. The Intuition pointer is a 
hardware sprite, specifically it is hardware sprite 0. 

Each of the eight hardware sprites derives its 
color from a specific set of four color registers or 



SO Amazing Computing V5. 7 ©1990 



palerte numbers. The Amiga operating system assigns palette colors 
16 through 19 to hardware sprite (Intuition pointer). Register I6 
is always transparent and numbers 1 7 through 19 are visible colors. 
This provides the first and simplest method of customizing the 
pointer with AmigaBASIC source code. Its color can be changed 
ift'itli PALETTE statements, specifying color registers 17 through 19, 
to any colors we wsh. This works e^'en witli a screen that has only 
2, 4, 8 or 16 colors. It's still that same old arrow, but at least this gives 
it a new coat of paint! 

Changing the shape of the pointer requires a bit more 
programming and some help from system library routines. There 
are four routines in all: Two from the intuition library and two exec 
library functions. It is assumed thai die reader is at least somewhat 
familiar with the LIBRARY statement, bmap files and calling Rom 
Kernel routines. If not, this information can be found in the Amiga- 
BASIC manual and in die About Bmaps program on the Extras disk. 
The listing provided at the end of the article assumes that both 
"intuition.bmap" and "exec.bmap" files exist in either the :Libs 
directory of the Workbench disk or in die same director^' as the 
Hsting source code. 

The key routine for creating a custom pointer is called 
SetPointer and resides in the intuition library. This routine requires 
six parameters and its calling syntax is: 

Seffointer&W&,Pointer&,height,width,XOFFSET,YOFFSET 

Looking at each of these parameters in greater detail, the W& 

variable is the address of what's known as a Window Structure. This 
is a list of data residing in RAM which contains a complete descrip- 
tion of a window. The AmigaBASIC function WINDO\V(7) provides 
this address so you can simply plug "WINDOW(7)" into Cliis spot 
when using tlie SetPointer routine. 

The Fointer& value is a long integer which holds die address 
of a specia 1 list of data residing in RAM that describes the shape and 
colors of the pointer. This list is known as a Spritelmage Structure 
and is described in more detail below. 

The height and width parameters are the overall dimensions 
of the pointer measured in pLxels. The last two values, XOffset and 
YOffset, give die reladve position of the pointer's "hot spot". This 
is the specific point that the system recognizes the pointer to be. 

Taking a closer look at the Pointer& parameter mentioned 
above, diis long integer variable holds tlie memory address of a 
specia! list of data in RAM. This list, called a Spritelmage Structure, 
is a sequence of two-byte integers (words) in RAM which provides 
die necessary' pixel information for describing the shape and colors 
of a sprite. It is as long as it needs to be to include all die data of 
die particular sprite rendered. The first two words and the last two 
words are always set to zero when tliis structure is used for 
describing pointers. The actual image data begins at the third word. 
A very simple example of a Spritelmage Structure would be: 

OOOOOOOOOOOOOOOO.OOOOOOOCKXWCXXWO 
1111111111111111,1111111111111111 
000000(X)OOOOOCX)0,0000000000000000 

For purposes of clarity, the words have been illustrated in pairs. 
This makes it easier to w^ork with the image data, as will be more 
apparent in a moment. In actuality the words are simply arranged 
in sequence from first to last in RAM. 

A word is 2 b\tes or I6 bits. This structure contains six words. 
As mentioned above the first two and last two words are always set 
to zero. The pointer's image data in diis example is contained in the 



third and fourth words. What has been presented is a very simple 
pointer, one pixel high and 16 pixels wide. 

The image data words work like this: The leftmost pixel of the 
pointer is represented by tlie leftmost bit of both die third and fourth 
words. These two bits are both 1, so tliis pixel is represented by the 
binary number "11" which equals 3 in decimal. The operating 
system then assigns a color to diis pixel according to diis table: 



binarv 


.de.Qimal 


color 


00 





16 (transparent) 


01 


1 


17 


10 


2 


18 


11 


3 


19 



In die above example all the bit combinations are "11" (decimal 3) 
so the pointer image represented is simply a horizontal line I6 
pixels wide (the maximum width of a sprite) rendered in the color 
assigned to register 19- If the color needed to be changed to register 
18, the diird and fourth words in the above example would be 
changed to: 

0000000000000000,1111111111111111 

which makes each bit combination "10" (decimal 2), so register 18 
would be used for each pixel. Yes, each bit combinadon in this 
example would be "10", not "01". It works like this: First, take the 
leftmost bit of tlie word on die left (a °0") and then take the leftmost 
bit of the word on the right (a "1") and mentally place this second 
bit to the LEFT of the first bit, which results "10". It may seem to be 
easier and more natural to do it the other way around, but diat's 
how these bit patterns work. 

This is why the words of the Spritelmage Structure are shown 
in pairs. Each horizontal line of pixels which makes up die entire 
image of the pointer requires two words of image data. This 
provides each pixel of the image with two bits to define its 
individual color. Each pair of words is then used to describe a 
horizontal sequence of I6 pixels. 

Additionally, in order to shorten the above pointer to a width 
of eight visible pixels, it would be done by changing the tliird and 
fourth words of the Spritelmage Structure to look like this: 

0000000000000000,0000000011111111 

The leftmost eight bits of die word on the left, matched with the 
leftmost eight bits of the word on the right, all produce a "00" 
combination. The pixels corresponding to these bits will be 
rendered in color I6 which, according to die table above, is the 
transparent register. The remaining 8 pixels have a "10" binary 
combination, so register 1 8 will be used for diese on the screen. This 
will produce a l6-pixel horizontal line in which only the eight pixels 
on the right will be visible. 

Using binary numbers like tliis can get rather tedious, so lets 
switch to a shorter notation: Hexadecimal. In hex, each group of 
four digits is represented with a single hex digit, so 16 binary digits 
can be shortened to a four-digit hex number. In the hexadecimal 
system die numbers zero through nine are the same as for the 
decimal system. However, the numbers ten through fifteen are 
represented by the letters A through F. So twelve, in hex, is simply 
"C" or &HC in the AmigaBASIC notation. When converting binary 
numbers to hex, take each 4-bit group and subsdtute the hexadeci- 
mal equivalent. Translating die first example Spritelmage Structure 
above to hex, then, would look like this: 



Amazing Computing V5. 7 ©1990 51 



0,0 

FFFF,FFFF 
0,0 

(Note: The AmigaBASIC prefix "&H" — which would be re- 
quired for the interpreter to read tliem as hex numbers — is being 
omitted from these examples.) 

The hex number "F" is fifteen or "1111" in binary, so l6 ones 
would be represented as "FFFF" in hex, and there's no need to write 
a hex "0000" to represent 16 binary zeros because zero is zero any 
way you look at it. 

You may want a pointer that's a little fancier than a single 
horizontal line . To do this, just add more pairs of image data words. 
For example, a solid rectangle would look like tliis: 

0,0 

FFFF,FFFF 
FFFF,FFFF 
FFFF,FFFF 
FFFF.FFFF 
0,0 

which represents a rectangle l6 pixels wide by four pixels high, 
rendered Ln the color of tlie 19th register. 

Rendering more complex objects with this method takes a 
litde practice. In the beginning it might be easier to draw die image 
first on a piece of graph paper within a width of 16 graph squares. 
Then take one horizontal line at a time and determine what color 
each pixel on that line should be. From this the two l6-bit binary 
numbers representing diis line of pixels can be worked out to 
produce this scheme of pixels. Each binary number can then be 
converted to hex or, if preferred, decimal. Once diis has been 
worked out for a few lines, the process will go much faster. 

After the pointer's appearance has been determined, and the 
image has been translated into die appropriate numbers, the actual 
Spritelmage Structure in RAM must now be created. Then the 
SetPointer routine and its address can be provided. Placing this 
stmcture in RAM requires two steps. 

First a suitable area in RAM must be found in which to place 
the structure. This is done with a routine in the exec library called 
AllocMem. Its syntax is: 

addr&-AllocMem&(ByteSize,opt&) 

Where addr& is a long integer variable of personal creation, 
ByteSize is the size of the desired memory block in bytes, and opt& 
is a value which defines certain options which will be discussed in 
a moment. When diis routine is properly set up it will allocate tlie 
memory needed, and it will assign die address of diis memory block 
to tiie addr&-\'ariable. Since diis routine returns a value (die address 
of the allocated memory), it requires a DECLARE FUNCTION 
statement before using it. It looks like diis: 

DECLARE FUNCTION AllocMem&O LIBRARY 

The value returned by AllocMem is a long integer, hence the "&" 
following the routine name. 

The opt& variable tells AllocMem w-hich of several options 
are desired for this niemor>' allocaUon. In diis case the value used 
is 65539 C2A0 + 2^1 + 2ai6) which teils AllocMem to find us a block 
of stable memory within the area of RAM known as CHIP RAM, and 



clear all the bytes in this allocated area to zero. The Spritelmage 
Structure must be in CHIP RAM, because the structure contains 
image data. CHIP RAM is die lower 5 1 2K of RAM on original Amigas 
or the lower 1 meg of RAM on machines with the new Super Agnus 
chip, and it must be used for storing image data because it is the 
only part of RAM wliich the graphics chips can access. There are 
other possible options for use with the AllocMem function in 
different situations and a more complete description of these can 
be found in the "Amiga ROM Kernel Reference Manual: Exec" from 
Addison-Wesley. 

As mentioned above, the ByteSize variable is the size of die 
desired memory block measured in bytes. The AllocMem routine 
always works with multiples of eight bytes, so it will round this 
figure up to the nearest multiple upon execution. After the required 
memory block is allocated, we actually create the Spritelmage 
Structure in RAM widi POKEW statements. In doing diis, die 
address returned by AllocMem is used as a point of reference. For 
example, if a pointer is going to be rendered as a single horizontal 
line (see first example), this is how the Spritelmage is created: 

opt&=2A0+2Al+2Al6 
Pointer&=AlloaMem&(l 2,opt&) 
POKEW addr&+4,&HFFFF 
POKEW addr&+6,&HFFFF 

Here AllocMem is set up to allocate 12 bytes of memory, because 
the structure contains she words which is equal to 12 bytes. 
AllocMem will actually give us l6 bytes instead of 12, because l6 
is the nearest multiple of eight bytes, but only the first 1 2 bytes are 
going to be used for the stmcture. None of die zero values have to 
be filled, because die AllocMem option was used, which already 
cleared die entire allocated memory block to zeros. Now simply use 
POKEW to insert bodi the image data words C&HFFFF), beginning 
widi "addr&+4," because this data begins four bytes from the 
starting address of the structure. The above code completes 
constrtiction of the Spritelmage Structure, now the Pointer& 
variable can be used as a parameter in die SetPointer routine. 

One important point to keep in mind when using the 
AllocMem rouUne is that die memory it allocates remains allocated 
undl it is specifically freed up or a reboot occurs. If the program 
does not free up this memory before it ends, the structure will 
remain in RAM after it ends, and waste system resources. The 
freeing-up of allocated memory is done with another exec routine 
called FreeMem. It's syntax is: 

FreeMem& addr&,ByteSize 

where addr& is die address of die memory block to be freed up, 
and ByteSize is its lengdi in bytes. The EndIt routine in the 
accompanying listing shows an example of its use. One word of 
caution as regards to FreeMem: never attempt to use it to free up 
memory wliich was not first allocated by AllocMem or another 
memory allocation routine, as diis will cause a system crash. Also, 
be sure diat diere are no typos in die addr& variable or odier 
conditions that would cause the variable to default to a zero value, 
as this is also Guru-bait. If mysterious crashes occur-vHfhile using this 
routine, check the code carefully for these two likely causes. 

Let's review a few points here before going on. The maximum 
widdi of the pointer is l6 pixels. Each horizontal line of its image 
is represented by two words in die Spritelmage Strucaire. The bit 
combinations of each of diese pairs of words determines the colors 



52 Amazing Computing V5. 7 m990 



of tlie pixels in each horizontal line. If a pointer is constructed that 
is, say, ten pixels high, the struaure required to hold its complete 
definition will be ten words plus ten words plus four words, for a 
total of 24 words or 48 bytes. Remember, each line of tlie image 
requires a pair of words (four bytes) and must include \he two zero 
words at tlie beginning and the two zero words at the end. The 
formula, then, for the lengtli of the Spritelmage Structure in bytes 
is: (height*4)+8. This could add up to quite a few POKEW 
statements for any pointer more than a few pixels high. So, it usually 
saves some typing lo set up pixel data as DATA statements and use 
a loop to READ and POKEW them into die structure. This is how 
it's done in the accompanying listing. 

Do not use an array to hold the Spritelmage Strucaire and 
pass die array's address on to the SetPointer routine, because it will 
not work reliably. This was the first method I used when familiar- 
izing myself with custom pointers, and the only result achieved was 
a completely invisible pointer! What's more, attempts to use an 
array for this purpose created the oddest glitch with the AmigaBA- 
SIC editor — the "ghost writer" bug. 

After typing in code which used an array to hold the 
Spritelmage Structure and dien rurming the program, I looked 
again at the original listing again and found that the editor had 
changed the source code! This happened time after time with 
several different code variations. The editor just didn't seem to like 
that array being there. Wlierever it appeared in die listing, die editor 
removed it and replaced it with a continuous string of non- 
alphanumeric ASCII characters stretcliing out four-and-one-half full 
screen widths to the right! Moving die cursor to the beginning of 
this string, pressing die delete key once and then moving die cursor 
to another line caused the string to vanish. An attempt was made 
to nin die program with the ASCII characters still there, and the 
program would just balk, producing a "Subscript out of range" error 
message. (Tliis bug is still a mystery, but If anyone out there can 
enlighten me, please write.) 

Getting back to die SetPointer routine, the last two parame- 
ters need some explanation. The XOffset and YOffset variables 
describe where the pointers "hot spot" is wanted in relation to the 
pointer as a whole. This hot .spot covers an area equal to die size 
of a single pixel and represents the screen location of the pointer 
as viewed by die system. So, die pointer's shape is really just a pretty 
package ■wrapped around die hot spot. 

If both the X and YOffset values are set to zero, the hot spot 
will be default to the upper left comer of the pointer. Negative 
XOffset and YOffset values will move it to the right and down 
respecti\'ely. Positive values will do die opposite. The best place to 
put the hot spot depends on die shape of die custom pointer. With 
an arrow shape the lip of the arrow head is an obvious choice. 

However, an arrow that points to die upper right instead of 
to the left would require the hot spot to be in the upper right corner 
of the pointer. In this case an XOffset of something like -1 5 would 
be used, while the YOffset would remain at zero. 

If this business of negative x values moving the hot spot to 
the right and negative y values moving it downward seems 
backwards; that's because it is backwards. The hot spot itself 
doesn't really move, it's the pointer shape which moves in relation 
to it. A negauve XOffset value moves the pointer to the left which 
shifts the hot spot righrtvard in relation to it. Likewise, a positive 
YOffset value will shift the pointer downward which gives tlie hot 
spot a higher relative position. Just remember that die offset values 
shift the body of the pointer in relation to the hot spot, and the 
negative/positive aspect will be easier to visualize. 



Now you can create realistic, natural looking scenery 
on your Amiga with Scene Generator. The above 
picture is an example of one of the millions of scenes 
that may be created with this powerful new graphics 
tool. Scene Generator uses fractals to create natural 
scenery based on random numbers. You can change 
the steepness, snow and water levels, lighting angle 
and colors. Create everything from a desert to a snow 
covered mountain with lakes. The possibilities are 
nearly unlimited! 

"Available at your dealer. For credit card orders call 
(916) 624-1436 now. Or send $49 to Natural Graphics, 
POB 1963, Rocklin, CA 95677. Free shipping USA. 



Circle 122 on Reader Service card. 

That's really all diere is to creaung a custom pointer. First 
create the Spritelmage Structure and then call SetPointer, plugging 
in the appropriate parameters. The new pointer will appear 
immediately upon execution of SetPointer. 

Now, if a custom pointer is created, does diat mean die litde 
default arrow is lost forever? Fear not. Intuition likesdiat litde arrow 
far too much to let go of it that easily. It can quickly be retrieved 
with a simple call to die intuidon library routine ClearPointer. Its 
syntax is: 

ClearPointer W& 

where W& is again a pointer to a Window Structure which can be 
obtained via the WINDOW(7> function. Its a good idea to always 
call this routine before exiting the program. If it is not used, die 
custom ]jointer will probably hang around after the program ends, 
until die user clicks die mouse on a window. The system will then 
reset the default pointer on its own. 

The reason the default pointer is not lost is that an Intuition 
pointer is always linked to a specific window. Creating a custom 
pointer for one window does not affect the pointers of other 
windows. For example, the program opens three windows and 
window number three is currendy active. A custom pointer is then 
created as oudined above, and it appears on the screen. If window 
number one or two then becomes the current output window, die 
pointer will revert to its default shape undl window number tliree 
becomes active again, at which time the custom pointer will 
reappear. 



Amazing Computing VS. 7 ©1990 



53 



This linle wrinkle is easy to solve. Immediately after opening 

each 'window make a call to SetPointer, using the WINDOWC?) 
function as tlie first parameter. This function will always return the 
address of the current window, so tlie pointer will be attached to 
it when SetPointer is called. Then the code, for seEting up a screen 
with three windows where all use tlie custom pointer, would look 
something like this: 

SCREEN 1, ...etc 
WINDOW 1, ...etc 
SetPointer WINDOWC7),.. .etc 
\(TNDOW 2, ...etc 
SetPointer WINDOW(7),.. .etc 
WINDOW 3, ...etc 
SetPointer WINDOW(7) , . . .etc 

This ties the custom pointer to eadi of the three windows. No matter 
how the current output windo'w is changed, eitlier through source 
code or user clicks. The new Intuition pointer is maintained. 

Can each window have a different custom pointer of its own? 
Yes — just make a separate Spritelmage Structure for eacl: and 
include its address in separate SetPointer calls. Actually, as many 
pointers as desired can be created, or change at any time, with this 
routine. 

The AniigaBASIC listing accompanying this article shows a 
simple demonstration of creating custom pointers. The first mouse 
click causes the default pointer to disappear, the second brings on 
a custom pointer and tlie diird restores tiie default arrow. 

The disappearing act is done by first defining a "dummy" 
Spritelmage Structure which contains only zeros and passing its 
address to the SetPointer routine. This creates an invisible pointer. 
It's actually still tliere, and it will function.. .but tr^' to find it! 

This invisible pointer trick actually has some utility' as not all 
programs require a pointer. When not needed, a pointer can be a 
bit of a nuisance, so it's nice to be able to get rid of it when it serves 
no purpose and would only get in the way. 

The Intuition pointer is an impoilant part of the Amiga user 
interface, and it is also a tool often overlooked by programmers. A 
pointer which changes its shape to fit the current program option 
or mode is not only clever, but can be a useful reminder to the user 
as well. This would be true of a paint program in which the pointer 
assumes the shape of the currently-selected drawing tool, for 
example. A text message, written vertically, can also be communi- 
cated via the pointer using the appropriate image data. Animated 
pointers are also possible through die use of a series of SetPointer 
calls matched with Spritelmage Structures which define a sequence 
of image "frames" in page-flip fashion, 

These are just a few, off-the-cuff ideas for applications of 
customized pointers. After a little experimentation, inventive read- 
ers ■will dream up many odiers. 



Listing 



* cusTo:-; intuition poimte?. des-io 

* AmigaBASIC source cede 

* by 

* Robert D'asto 



SCREEN 1, 640,200,2,2 

WINDOW 2, "Pointer Demo",, 31,1 

DECLflKE FUNCTION AilocMemSO LIBRARY 
LIBRARY "exec.library" 
LIBRARY "intuition. library" 

CLSlPRIBT 

PRINT "Click mouse to make pointer disappear." 

WaitClick 

NoPointer 

CLS: PRINT 

PRINT "Click mouse again to create custom pointer." 

WaitClick 

CustoiaPointer 

CLS: PRINT 

PRINT "Click mouse again to restore default painter" 

PRINT "and end program." 

WaitClick 

ClearPointer WINDOW (7) 

Sndit: 

** free up the memory allocated earlier 

** for the Spritelmage structures 
FreeMem pfi, 75 
FreeMem np£ , G 
LIBRARY CLOSE 
SCREEN CLOSE 1 
END 

SUB NoPoi.nter STATIC 

^* creates Spritelmage Struct and 
'» pointer with no visible image data 
SHARED npi 
opts=2~0-^^~l+^"16 
rip4=AllocMemS {3, opts) 
SetPointer WINDOW (7 1 ,np6,l,l, 0,0 
END SUB 



SUB CustomPointer STATIC 

^'^ declare a Spritelmage address 
'* variable as SHARED so we can 
'* free up the memory later in 
^* Endit routine 
SHAP.ED pS 

'• allocate memory for the structure 
opts=2"0+2"l+2''16 
pS=AllocMer[iS (76, opts) 

^* fill in the image data beginning 
'• with an offset of 4 bytes from the 
^* beginning of the structure 
FOR x%=4 TO S6 STEP 2 
READ d$ 

pi.\eldata%=VAL ("5.-:"-rd$) 
POKEW ps + y.%, plxeldata% 

NEXT 

DATA 1FF8,1FF8,1FFB,1FF8, O.IFFS 
DATA FrFF,FFFF,3FFC,0, 73BE,44Q 
DATA 7FFE,0,FFFF,0,FFFF, 
DATA 6ESE, 100, 77DE, 0,38 3C,0 
DATA iFFB,0,7EO,0,F?0,E70 
DATA 3E7C,3FFC 

^* give all the parameters to the 
*' SetPointer routine 
SetPolnterfi KIND0W(7l ,ps, 16, 16, 0, 
Stro SUB 

SUB WaitClick ST.ATIC 

WHILE MOUSE [0)00 

WEND 

WHILE MOUSE |0)=0 

WEND 
END SUB 



•AC- 



54 Amazing Computing V5. 7 ©1990 



BATMAN; The Movie 



"BATMANr THE MOVIE" IS A NEW action 
acfveniure game from Data East. In it you 
assume the title role of Batman. Since [he game 
is based on the most recent Batman movie, this 
game doesn't invol\-e Robin, the Boy Wonder. 
Tlie game sticks to tlie plot of the movie rather 
faitiil'uily, iiighlighting tlie best action se- 
quences for use in the game. 

There are a total of five sctJnarios through 
which you must guide Tlie Dark Knight. Tlie 
first game sequence recreates tlie shootout in 
tile Axi.s Chemical plant, in which Batman 
shoots Jack Napier. This unfortunate event 
causes Jack to fall in a vat of toxic chemicals, 
thus creating tlie Joker. Your only weapons in 
this sequence are the Batarang and the Batrope. 
You throw tlie Batarang at tlie villains through- 
out the chemical plant to eliminate them, while 
they fire at you with their grenades and pistols. 
A.s your healtli declines, your face at tlie bottom 
of the screen slowly ttirns to that of the Joker. 
Besides dodging bullets, you must also avoid 
the spray of toxic chemicals tliroughout the 
plant. The Batrope is used to swing Batman 



from level to level, in his search for Jack Napier. 
You have a total of 8 minutes to accomplish this 
mission. 

At tlie end of the first level Jack is 
transformed into the Joker, who in the sec- 
ond level chases you 
tlirough the streets of 
Gotham City. Your ve- 
hicle is the infamous 
Batniobile, equipped 
witli a computer which 
shows you the correct 
route to the Batcave 
(See picture). The 
computer displays an 
arrow at tlie top of the 
screen to show you at 
which streets you must 
turn. You only get three 
chances to turn, after 
which you will run into 
a police road block if 
you are unsuccessful. 
Since the Batmobile 



moves at such great velocities, you must engage 
the use of a Batrope to grab hold of the light 
poles at the intersections in order to make a turn. 
Hitting any obstacles along your 100 block path 




Batmobile enroute to tt\e Batcave. 



THEJETSONS 



ALL ItlGHT, SO MAYBE VM A KID AT 
hean, but 1 enjoy watching cartoons. Of course, 
not just any cartoon, usually liie old classics - 
Johnn)- Quest, Bugs Bunny, and THEJETSONS! 
It was tlius with much giee tliat 1 brought home 
"George Jetson and the Legend of Robotopia" 
Could tliey actually put (he look and feel of a 
cartoon into a computer game? I was about to 
find out! 




Mii< ttt rHmatiMS tad is a MM\i. 
ttm m ml ilin. lis laliN ski! is ohm 
ii mf titt, durt Im, 

Iklctiw It Ikt IMitif i) Otsis te»!i' Hfs 

I lib 1 nM> Uf Uff a RiniheMt ifKii] 
aisM^r 



Greetings from the planet Robotopia. 



In 'The Jeisons", you become George 
Jetson, head of the Jetson household. Along 
with this honor, you get to perform tlie usual 
fatherly duties such as hu nting for your car keys 



after your teenage daughter has borros\'ed the 
car; attending school science fairs; and going to 
i\'ork. Mr. Spacely is still bossing George 
around. Only this time George may deserve it - 
he's two hours late for work, and Spacely is 
ready to fire him. The only thing tliat George can 
do to make up for his tardiness is to accept a spe- 
cial assignment. It seems that Spacely has in- 
vested [Hi II ions of dollars in a resort on what was 
the teauliful planet of 
Robotopia. To finish the 
project, he needs more 
funds from a group of 
large investors who are 
headed to Rolxitopia to 
check the re.sort out. The 
only hitch is tliat the 
robotic residents of tlie 
planet seem to be at war, 
and tlius the planet is a 
disaster. Spacely wants 
you to find out what is 
going on and correct it 
before the investors ar- 
rive. If George is suc- 
cessful, he will not only 
keep his job, but get a 
hefty bonus as well. 
The game is provided on two disks, along 
a cartoon manual which provides the 
history of what happened the day before the 
game starts. This manual is also the source for 



• Wi kin m'i lilr i 

• rtH'iiii *t f«i> 

km. 



with 



words you must look up during the game as a 
form of copy protection. Luckily you only ha ve 
to do this once. The manual also explains to the 
p!a)'er how the game interface works. 

The game interface is extremely well 
done - especially for someone like myself who 
usually doesn't like adventure games. It is 
completely mouse driven • which also means 
you don't have to "guess what word tile pro- 
grammer wants you to use to get by this puzzle". 
The upper left portion of the screen is George's 
view of die area he is presently in. Below this is 
a text window, in which the description of your 
surroundings appear, as well as your conversa- 
tions with otlier characters. Y'ou speak with 
other characters by selecting a response in the 
window immediately to tlie right of the text 
window. It's your job to choose ihe correct 
response. If you try to think like George Jetson, 
you'll do all right. 

Tlie interface works wel!, and is very easy 
to use. The "View Screen is actually animated for 
some portions, which really adds to the game. 
The program also uses digitized sounds from the 
show, which also adds to the ambience. There 
are many characters with whom you can inter- 
act, and tlie plot of tlie game is interesting yet 
easy to follow. 

There is only one ptill down menu, which 
allows you to restart a game, save or restore a 
game, or quit a game in progress. 

(continued top of page 57) 



Amazing Computing V5 .7 ©1990 55 



(Batman, continued) 

will drain your life, and wasie time. You only 
have 5 minutes to reach the Baicave to begin 
work on deciphering the Smilex mystery. 

It seems the Joker is poisoning people all 
over Gotham Cit)' witli a chemical called Smilex. 
He puts the ingredients in 3 separate cosmetic 
agents, which when combined form ilie deadly 
Smilex poison. Using the Batcomputer, Batman 
must find out which products contain (he [xii- 
son. The Batcomputer has narrowed the choices 
down to eight chemicals. Using the Batcursor, 
you combine tltree of tiiese at a time to see if any 
contain tlte Smilex. The computer responds by 
telling you how many of the three items selected 
coniain Smilex. This is very simiiar to llie game 
of Mastermind, but with two ca\'ea[s: you only 
have 6 "tries", and 30 seconds in which to solve 
tlie puzzle. 

Batma n has succeeded in outsmarting the 
Joker at e\'er\- turn so far. but now the Joker 
plans to destroy the population of Gotliam City 
by spraying them wiili poisonous gas hidden in 
parade balloons at tiie Gotham Cit\' Carnival. 
You as Batman rush to tlie Baiplane, and fly 
down the streets of Gotham snapping the tether 
lines leading to the balloons, al!o%\'ing them to 
float to safety. Time is of the essence, as you 



have calculated that you must release 100 bal- 
loons within 5 minutes in order to thwart the 
Joker's plan. 

The last mission is tlie most difficult. The 
Joker has taken refuge in tlie Gotham City 
Catliedral, awaiting the arrival of his helicopter 
to flee to safety. Batman has only 12 minutes to 
find and destroy the Joker, once and for all. This 
scenario is very similar to the Axis Chemical 
plant, in thai all you have to work with Ls your 
Bataning and Batrope. There are more goons in 
this level, equipped \\ith automatic weapons 
and more grenades. You must also watch out for 
floors which collapse beneath your feet, which 
may lead to your ultimate demise (and llius the 
demise of Gotham City). 

The playing screen is divided into two 
main portions, the action screen (at tlie top) and 
the statistic screen (at the bottom). The statistic 
screen shows your current and high score, your 
health (the fading picture of Batman), the time 
remaining for the le\'el you're on, and how 
many 1 i\'es you have left. You are gninled 3 lives 
for the entire game, butcanearnan extra life for 
e\'ery 100,000 points scored. The game is pro- 
vided on one disk (copy protected) witli a well 
done, 6 page instruction manual. 



BATMAN feamres well done sounds and 
graphics. You can see as well as hear the 
Batmobile bum rubber, and watch the Batpbne 
as it is slowly consumed by flames. jMy game 
liad an inexplicable yellow line which appeared 
at tlie upper left corner of tlie screen and 
seemed to move around, but it never bothered 
me during game play. Overall, I was quite 
impressed witli tlie smootli scrolling screens 
and excellent sound effects. 

Tlie programmers wisely included a 
pause key (Fl), as well as key (F2) to turn on and 
off the soundtrack. For some reason, you aren't 
allowed to pause the game during the 30 second 
Batcave sequence. Unfortunately, there is no 
way to save a game in progress, nor are the high 
scores saved to disk. Anotlier feature 1 would 
have liked to see is the ability' to skip a level if 
you have already completed it. As it stands now, 
if you lose on Level 5, \'ou must replay all 4 of 
the preceding levels. 

"BATMAN" is a fun and exciting rendition 
of tlie movie of the same name . Action is present 
in quantity', with an exciting musical score. It's 
one of tliose games that keeps you coming back 
for more. If you've ever dreamt of becoming the 
Caped Caisader, try "BATi\LA.N". You WON'T be 
disappointed . — Miguel Mulct 



ADVENTURES THROUGH TIME 
Vol. 1 ; The Scavenger Hunt 



A TIME .\LA,CHINEI I DONT KNOW any- 
body who wouldn't want access to one for just 
a little while. Just tliink - you could go back and 
correct past mistakes, or maybe venture into the 
future and bring back information that would 
help you in the present. Alas, mucking with time 
could be dangerous, and it's doubtful that you or 
1 would ever get to see the inside of a time 
machine. Young Buck Vi'alker, however, is luck- 
ier llian the both of us. It seems tliat in llie 21st 
century, time tra\'el is possible - and it is a closely 
guarded secret. Only Historians of the United 
Eanh - an organization whidi in 2059 AD 
oversees all the nations of Earth - ha\'e access to 
a time machine. Buck's father is one such Histo- 
rian, who happens to be away attending a 
national convention of Historians, That leaves 
Buck and his rebellious friends unsupervised, 
and when tlie cat's a\\^ay, the mice will play! 

In "Adventures Through Time: The Scav- 
enger Hunt", an adventure game from Aunim 
Software, you become Buck Walker, the rebel- 
lious young son of a time traveling Historian. 
Time travel, until this time, had been used to 
record historv* accurately by actually observing 
past events. It seems Buck and his friends 
(whose parents are all Historians) have decided 
to go on a scavenger hunt through time - collect- 
ing relics from tlie past. These relics include a 
lyre, a tomahawk, a shield, a dinosaur egg, and 



a papyrus scroll. The kids don't mean any harm, 
it's just that as children of Historians they aren't 
allowed to play witli otlier children or each 
other (the government feels this woLild compro- 
mise tlie security surrounding time travel). Thus, 
Ace, Daisy, Bookworm, and Buck reson to this 
"harmless"' jaunt through time in orderto amuse 
tliemselves, 

"Adventures Through Time" is provided 
on a single non-copy protected disk, and in- 
cludes a well written 22 page manual, an 
■"Historian's Handbook' to lime travel, a United 
Earth decal, and a ""Time Machine Operators Li- 
cense". To start the game, you first must make 
a backup copy of the game. Following tliis, just 
boot up the machine witli the backup at t!ie 
Workbench prompt. Have your Workbench 
disk (1.2 or later) liandy, as the first time you 
load tlie game certain files are copied from tlie 
Workbench disk to the game disk, Tlie game 
wiil run in 512K. While tlie disk is not copy 
protected, you will need tlie Historian's Hand- 
book (printed on that difficult to read mxtroon 
paper with black ink) in order to type in the 
appropriate word to access tlie time machine. 

After the game has loaded, you are given 
a brief introduction and then you're ready to 
play. "Tlie game is in real time, meaning that for 
each minute of real time which passes, one 
minute passes in the game, (A pause feature is 



provided). You start in Buck's room, which is 
illustrated in the top half of the screen. In the 
middle of the screen is a status line which shows 
your condition, yourscore, the time of day, and 
the year (a useful feature when you're traveling 
through lime). When the right mouse button is 
depressed, the status line changes to a menu bar 
with tliree headings: GAME. PREFS, and HELP. 
The game menu allows you to load and save up 
to .seven different games, as well as pause, quit, 
or restan the game. The PREFS menu gi\'es the 
ability to change tlie text size, skill level, or drop 
into tile Workbench. The HELP menu offers 
help in playing the game. 

Below the status line is tlie narrative win- 
dow and a control panel. Commands are typed 
in the narrative window, which also serves to 
display descriptions of items, places, and con- 
versations . At the lower right of tlie screen is the 
control panel which helps decrease, but not 
eliminate, typing. To move tlie character left or 
right, you liit the left or right gadgets. To open 
an item, you press tlie OPEN gadget and then 
point to the item on the screen you wish to open. 
This only works if die item is shown on tlie 
screen. If the item is not on the screen, you can 
click on the word in the narration window if it 
is present there. ! found tliat most of the time it 
was easier just to type in the commands rather 
llian use the control panel. Typing is made a 



56 Amazing Computing V5.7 ©1990 



(Tbejetsons, continued from page :>:>) 
Unfortunately, I did have a couple of major 
problems with the game which almost pre- 
venled tliis review. The first problem \\'as tliat 
tlie game refused to boot at tlie Workbench 
prompt. It took me a while to locate tlie problem 
- which happened to be my Amiga 1300 
Genlock. A quick call to Microlllusions con- 
firmed tliat for unknown reasons, "The Jetsons" 
just doe.sn't Like genlocks (of any sort). They said 
tliat tlie only workaround was to completely dis- 
connect tlie genlock from tlie machine. As much 
as I hate to connect and disconnect equipment 
just to run a game, I stUl fel: tliat it was worth the 
hassle. 

The ne.\t problem was a little more se- 
vere. After playing tlie game for 2 hours, I got a 
visit from the guru. The error given was a Read/ 
Write Error on Disk s2. "No problem, " I thought. 
I'll just restart it from where I last saved the 
game. Unfortunately, I got the same error on 
trying to restore the game. I started tlie game 
completely over (ie, a cold reboot), but the 
game again crashed at exactly the sa me place. At 
this point, I went back to the store and got a 
second copy. I got tlie same error in the same 
place with the second copy too! So, back to the 



store for copy number 3, but it was to no avail. 
After going through three copies, I felt that 
maybe my machine was at fault (despite tlie fact 
that no otlier program I owned was crashing). 
Thus the Amiga was put tlirough an intensive 
set of system and disk diagnostics which de- 
tected no problems. As a last ditch attempt (I 
really did like playing the game when it 
worked), I sent the disks back to Microillusions, 
who returned tliem two weeks later witli the 
game copied onto lliem. Finally, I had a work- 
ing copy of the game. Microillusions stated iliat 
they had ne\'er had tliis problem before. I'm not 
sure if my area was just unlucky and got a bad 
batch of disks, but tlie problem was most 
infuriating. 

Overall, I really enjoyed playing "The 
Jetsons". The interface is well done, as are tlie 
sound effects and graphics. The plot is well 
thought out, and keeps you interested in play- 
ing the game (and completing the adventure). 
As long as you don't have tlie read/write errors 
I encountered (and don't mind disconnecting 
your genlock), I can recommend this game. I 
would definitely try the game at your local 
computer store before you take it home. 
— MiguelMulet 



BATMAN: THE MOVIE 

Game Design by Ocean Software 

Distributed by Data East USA. Inc. 

1850 Little Orchard Street 

San Jose. CA 95125 

List Price: S39.95 

Inquiry #2C9 

Ttie Jetsons 

Microillusions 

17408 Chatsworth St. 

Granada Hiils. CA 91344 

1-800-522-2041 

Price: $44.95 

inquiry *205 

Adventures Through Time 

Vol. i The Scavenger Hunt 

Aurum Software 

P.O. 80x5392 

Ventura. CA 93003 

(805) 659-3570 

Price $49.95 

Inquiry *2iO 



Young Buck In his room. 



little easier because the programmers use the 
function keys as substitutes for commonly used 
commands, (Thus the Fl key automatically 
types LOOK for you). A template is provided to 
put on [op of the function keys so you don't 
have to memorize the commands. 

Buck has several obstacles to overcome 
in order to win the scavenger hunt. First of all, 
he must find where the time machine is hidden. 
Provided he does this, he must then discover 
how to operate the time machine. Lastly, he 
must travel to the specific eras in which the items 
can be found, and convince their original 
owners to part with the possessions . These tasks 
are fairly straight forward, once the right se- 
quence of events are followed. The fun of Uie 
game is in discovering how eacli of tliese tasks 
can be accomplished. 

Each of the five eras are fairly easy to get 
around in. Most of them are linear, ie, there is 
only one main path witli a few rooms to explore 
off to the side. In the prehistoric and western 
worlds, you're required to jump over a few ob- 
stacles which gets tedious after a short while. 
Ancient Greece is perhaps the smallest ■^v'orld, 
but one of tlie harder eras in which Buck must 
accomplish his task. The pyramid is the hardest 
level to get around in, as it is a veritable maze of 
different passages. You'll need to dig out tlie 
pencil and paper to map tliat world out. 




Ik ew is ii twsi. lit DIIilH tt mtiiMiUj* 1. 
imrtsmei. 

tm rMfKSS Mt SMCi nil W list. 
fcffHif fM «M't «M( U sm fiHt? »« 

Yn mim ii tkc wssy cl«»t, 
Ym »e «M it tke miUas k*«M. 



As far as 
adventure games 
go, "Adventures 
Through Time" 
lacks many of the 
niceties that cur- 
rent adventure 
games offer, For 
example, many 
games completely 
eliminate typ- 
ing — allowing the 
player to concen- 
trate on the game 
rather than the 

phrasing of a certain command. Tlie parser used 
in this game does not help much either - its vo- 
cabular>' is extremely limited, meaning the 
player may have to trj' a lot of different word- 
ings before tlie computer will understand what 
to do. Also, in most graphics adventures the ob- 
jects that can be found in a room are displayed 
on the screen. In "Adventures", the player must 
rel)' exclusively on the narrative to see what 
items ha\'e been disco\'ered. Since the objects 
are not displayed on the screen, tlie player can- 
not just pick up the item by moving over the 
item and clicking. Lastly, the game features 
limited graphics and NO sound (not a peep!)- 
Tiiere are a few animations during the game 



The graphics are ver^' simple, and screen scroll- 
ing gets choppy in tlie few scenes where graph- 
ics are a little more complex. 

Since "Adventures Through Time" 
doesn't make good use of Amiga sound or 
graphics capabilities, it relies heavily on tlie plot 
and game play. Unfortunately, these are only 
fair as far as adventure games go. Maybe I'm 
spoiled, but I like the '"no typing" and "heavily 
graphics oriented" features that are offered by 
other adventure games that are currently avail- 
able. Most otlier games also make liberal use of 
sound effects and soundtracks. "Adventure 
Through Time" is 'cute" as is, but is more likely 
to appeal to a younger crowd. — MigueiMulet 



Amazing Computing V5. 7 ©1990 57 




Tree Traversal 
& Tree Search 



by Forest W. Arnold 



IN MY LAST ARTICLE, 'TREES AND RECURSION" (AC V4.12), I WROTE 
about natural binaiy trees and showed how to build the trees as a list of lists. 
Natural binary trees are very useful data structures, but you need to know 
how to move around in the trees and to find whatever data is stored in the 
nodes in order to put them to work. 



I'll discuss m'o common methods for 

traversing trees. Then I wil! explain ho^' the two 
traversal methods can be used to search for a 
node in a tree. Before diving right into a 
discussion of tree traversal and search tech- 
niques, I'll briefly review what natural binarj' 
trees are. 

NATURAL BINARY TREES REVISITED 

Figure 1 shows the tree which was dis- 
cussed in my last article, and figure 2 shows how 
the tree is implemented as a list of lists using 
only two pointers in each node. One pointer is 
directed at a node's sibling node. This is the 
standard 'next' link pointer in a linked !i.st. The 
other pointer points to a linked list containing 
that node's cliild's node. The arrows in figure 2 
which point to the right represent the sibling 
link pointers, and tlie arrows which point 
downward represent the ciiild link pointers. 
The top node, numbered 0.0, is called the root 
node of the tree, and the nodes numbered 3.0 
through 3.7 are called leaf nodes. The tree has 
four le\-els, numbered tlirough 3. The root 
node is on level 0, and the leaf nodes are on 
level 3. The C structure defining a node in the 
tree is: 



^ypedef s^irucc cleverNode 



struct CleverNode 'next,- /* sibling link 
pointer */ 

struct cleverNode *child; /* child 

link pointer */ 

unsigned char 'data; /» this 

node's data */ 

) CLEVER_NODE_T; 

Trees constructed as lists of lists using this 
type of node definition are called natural binary 
trees. With this single clever node defmition, just 
about any tj'pe of hierarchical structure can be 
represented in a C program. By storing function 
pointers in the tree nodes, even C programs can 
be constructed as natural binary trees! In my last 
article, I showed you how to build tlie tree. But 
to use die tree once you'\'e succeeded in build- 
ing it, you need to know how to move around 
from node to node. Here's how it's done... 

TREE TRAVERSAL 

To find a node in a tree, you not only need 
some method for moving from one node to 
anotlier, but you also need a method which will 
allow ail of the nodes to be visited, while not 



58 



Amazing Co7npnting V5.7 ©1990 



allowing die same node to be visited more than once. All of the 
nodes in a list of nodes connected by 'next' pointers can be visited 
by starting at the first node in the list and following the 'next' point- 
ers to the last node. This is the standard way linked lists are 
traversed. It is very easy lo visit all of the nodes on a level which 
are connected to each other. Recursion can be used to travel 
between levels of the tree. Recursive procedure calls are used tr 
move down die tree, and procedure returns are used to move back 
up to the pre\'ious le%fel . By combining recursion and iteration using 
'next' pointers, you can get to all le^'els of the tree and to all the 
nodes in a list. But how do you know for sure that all nodes will 
be visited (once)? 

A path in a tree consists of a sequence of linked nodes. In 
figure 1, one path consists of die connected nodes 0.0, 1.0, 2.0, 3.0. 
All of the links in a tree are 'directed', which means they only go 
in one direction. This means diat any path from a node to any other 
node will also be directed. Since all of die nodes in a tree are 
connected to each other through some path and all paths go from 
any node to a leaf node, any padi in a finite tree is guaranteed to 
end and guaranteed not to double back on itself. And since all of 
die nodes are connected through a path, everv' node in the tree can 
be visited by starting a padi at the root node and visiting all the 
children of the root, all of die children's children, etc. What all of 
this means is diat widi die right mediod, you can be assured diat 
all nodes in a tree can be visited, and that each one will only be 
visited once. Visiung the nodes in a tree is called tree traversal. 

Two common traversal techniques for trees are depth-first 
traversal and breadth- first traversal. Many algorithms manipulate 
trees by using one or bodi of these methods. Almost every 
procedure in the demonstradon program uses depth-first traversal. 
The ideas behind each of these two traversal techniques are simple. 

In depth-first ti^aversal, nodes are visited by following die 
child links first, moving dirough the tree from top to bottom. When 
a leaf node is found, sibling links are followed from left to right unul 
die end of the sibling list is found. The traversal dien returns to the 
parent node of the leaf, and die parent's sibling links are followed 



from left to right. If any node in a sibling list has a child node, the 
child link is followed. This process continues until the traversal 
recursively returns to the root node and ends. The traversal rules 
are: 

Rule 1: If the current node has a child link, follow it. 

Rule 2: If the current node does not have a child link or the child 
was already visited, foUow the sibling link, if there is one. 

Rule 3: If the node does not have a sibling link or all sibling nodes 
have been visited, move back up the tree to die parent node. 

Figure 3 shov/s the order in which nodes are visited during 
a depth-first traversal. Given the structure of a natural binary tree, 
depth-first traversal is straight-forward; if a node has a child node, 
visit the child; odierwise, visit the sibling. Child nodes are visited 
by recursion and sibling nodes are visited by following 'next' 
pointers. A recursive C procedure to perform depth-first traversal 
is: 



void dfTraverset topHode ) 
CLE;VER_NODE_T •topSodej 
I 

CLEVER_KODE_T 'node; 

.lode = copHode; 
whilGf node ) 



1 



if ( notie^>child I 

dfTraverset node->child ); /* recurse */ 

node - node->nes(C; /• iterate */ 









fao) 










^ 




^ 






(2.0 J 




^^^^ 




(tS\ 


(S) 


(11 J 


h 


Flgufe 1 . A Tree 




3.6) fij) 






Figure S. Queues for Breadfn-Rref Search 



Amazing Computing V5. 7 ©1990 



59 




Spotlight on Software 

Advantoge. GoldDlsk 120.00 

Art Department 53.50 

A-Tdk III 59,00 

Auto Script 71.00 

Bors& Pipes 170.00 

Bars & Pipes Sound Kit 37.99 

Bars & Pipes Music Box A 37.99 

Bars & Pipes Rules/Tools 37.99 

Can Do 88,99 

Champions of Krynn 37.99 

Credit Text Scroller 26.00 

CygnusEd Professional 2,0 ,.., 65.00 

Doctor Ami , 31.99 

Escape from Singe's Castle .. 42,99 

Fat Tracks 36.99 

Hero's Quest 37.99 

Mantiunter2 33,00 

Music Ivlouse (Dr. T) 50,00 

PIC-MagIc 60,00 

Pirates 29,00 

Saxon Publlshier 261,00 

Stiork At}ac)< 27,00 

Their Finest Hour 42,99 

Tiger Cub 59.99 



Spolllgtit on Hardwore... 

501 Clone,Splilt512K 8000 

6e030/'1megs/882 2050,00 

fllckerFlxer 460,00 

Floppy Drive, SuproDrlve „,. 135,00 
Floppy Drive. Internal 2000,,,. 90,00 

Harddrlve, Quantum AQ 420,00 

Hcrddrlve, Quantum 80 625,00 

Harddrlve, Quantum 105 .,„ 735,00 
Haiddrlve. Supra 20M 500 ., 505,00 
Memory. AdRAh,^ 520 Ok 500 120.00 
t>/lemory, Adv 20B0 BMeg OK 147,00 
f^emory, BaseBoard OK 500 128,00 

tv^odem, Aproiek 2400 65,00 

tv/!odem. Supra 2'100 120,00 

Modem, Prog Periph MNP „ 169,00 
Mouse, Golden Img (Konyo) 69,00 

Scanner. MIGraph 339,00 

SCSI Controllet, Adv 2000 .,.,1 55,00 
SCSI Controller, Byle/Sync ., 170,00 
SCSI Contfoller, Word/Sync 170,00 

Speclalll 

Digitizing Setup: Camera, variobie 
lens. Auto Droid. copy stand, and 
Dlgi-Vlew40 460,00 

Orders Only Please 

800-544-6599 

Visa MC/CODs 



Circle 13* on Reader Service card. 



2414 Pendleton Place ■ Waukestia. Wi 53188 ■ 9 AM to 5 PM M-F 



The \\'hi!e' loop implements the iteration on the sibling list 
by following 'next' pointer.? until a node which has no 'next' link 
is reached. The loop tlien falls tliroiigh and tlie procedure returns, 
traversing back up the tree. Within the loop, cliild links are trav- 
ersed by recursion before the 'next' sibling node is visited. When 
a node without a child is reached, its sibling is visited, and the 
process continues until all reachable nodes have been visited. 

Recursion makes the language perform all of the bookkeep- 
ing needed to remember parent nodes. It also keeps track of tlie 
data from all the earlier tra\'ersed states. When called witli any node 
in a natural binaiy ti'ee as tlie input argumeni;, this procedure will 
traverse aU of tlie nodes which can be reached by following the 
links leaving the node. If the initial input node is the root node, the 
entire tree will be traversed. 

In breadth-first traversal, all of die nodes on a level are visited 
from left to right before child links are followed down to the next 
level. The traversal order is left to right across an entire level, then 
down to the next level. Just as in depth-first traversal, recursion is 
used to move between levels, and iteration is used to visit all of the 
nodes on a level. The main difference between the two techniques 
is diat depdi-first traversal visits the child nodes the before sibling 
nodes, and breaddi-first traversal visits the sibling nodes before the 
child nodes. Figure 4 shows the order in which nodes are visited 
during breadth-first traversal. 

Breaddi-first traversal sounds as simple as depth-first tra- 
versal, but it is actually much more complicated to implement, 
because all of the nodes on a level may not be in the same sibling 
list. If this is the case, there will not be a 'next' pointer conneaing 
the last node in one list to the first node in anodier list on die same 
level. The bottom two levels of the tree in figure 2 show this. It's 
real easy to visit node 2,0, then 2.1, but how can node 2,2 be 



reached from node 2.1? The same question applies to tlie bottom 
level. How can node 3-3 be visited after node 3,2 is visited, and how 
can node 3.6 be reached from node 3.5? 

What is needed is some way to link all of tlie lists on the same 
level together, so that when the traversal reaches die end of one list, 
it can jump to the first node in the next list. This is just the type of 
problem which can be solved witli queues (remember that a queue 
can be implemented in C as a list widi new nodes added to die end 
of the list). As the nodes are visited from left to right on one level, 
the child lists on the next level are put in a queue, then the queue 
is used to traverse the nodes on the lowerlevei. Figure 5 shows how 
die child lists are linked togetlier in a queue. The small circles 
represent the queue nodes. The queue numbered is the start 
queue. The queue for le\'el 1 is built as level is being traversed, 
tlie queue for level 2 is built as level 1 is being traversed, etc. 

To start the traversal, a queue consisting of tlie cop node is 
built, and traversal proceeds using tlie following rules-. 

Rule 1: If die node has a child list, put a pointer to the child list in 
a queue. 

Rule 2: If the node has a sibling, visit tlie sibling. 

Rule 3: If all nodes on a level have been \'isited, recurse using tlie 
queue to traverse the next level. 

Building the queue is fairiy easy. The trick is to build the 
queue at the same time the breadth-first traversal is happening. 
Naturally, I have an algoritlmi up my disk drive for doing just diis 
trick, although it's neither pretty or efficient. The queue node 
structure is: 

typedef struct queNode 

( 

srrucr queKode -next; /' link to next node '/ 
CLEVER_NODE_T "noaeLlst; /• list of sibling nodes "/ 

) qu=:no3=;_t; 



The C procedure for perforRilng breadth-first traversal of a natural 
binary tree is: 



void bfTraverseC queue ) 

QUENODE_T -queue; 

I 

QUEHODE_T *tDpQHode, *newQNode, 'prevONode, *neKtQNode,- 

CLEVEH_HODE_T "tOpNode ; 

topQNode ^ prevQNode = NULL; /* next level's queue */ 

wbile( queue 1 /* iterate on queue "/ 
I 

topHode = queue->nodelist,' /* get sibling list 



while ( topNode ) 
1 



iterate on list nodes '/ 



if ( topNode->child 



/• put chlldlist in Che */ 
I /' queue of child lists 

nevi(JNode= (QUENODE_T*) malloc (siieof (QUEN0DE_T1 ) ; 
newQNode->nodeList = topNode->child; 
newQNode->ne«t = null,- 
if ( prevQWode ) 

prevQ»ode->next « newQNode; 
else 

topQNode = newQNode; 
prevQNode " newQKode; 
1 
topNode = tapNade->next ; /" get next sibling node'/ 



) 

nextQ^ode = queue ->next; 

free { queue ) ; 

queue = r.extONode; 
1 
if t topQNode ) 

bflraversel topQMode 1; 



get the next queue 
free current node 



«/ 



/• If a queue was built,*/ 
/* recurse ■/ 



(continued on page 79) 



60 



Amazing Computmg V5. 7 ©1990 



R O 




E R S 



by Tlje Bandito 



[The statements andprojections presented 
in "Roomers" are rumors in the purest 
sense, Tlie bits of information are 
gathered by a third party source from 
whispers inside the industry'. At press 
time, they remain unconfirmed and are 
printed for entertainment value only. 
Accordingly, the staff and associates of 
Amazing Computing^" cannot be held 
responsible for the reports made in this 
column.] 

COMMODORE HIRES ATARI'S 
FOUNDER 

Yes, dial's right, sports fans. Commo- 
dore International Ltd. announced tliat 
Nolan Bushnell (inventor of Atari and 
Chuck E. Cheese's Pizza Time Theater) has 
been hired as general manager of Commo- 
dore's Consumer Interactive Products. 

So what is this division, you ask? 
Well, this is the part of the company that's 
developing (you guessed if) the .'\mlga CD- 
ROM player, though of course Commodore 
didn't officially say that. \X'hat they did say 
was interesting: They announced that No- 
lan is already at work with his team on a 
product they expect to demonstrate at die 
June Consumer Electronics Show in Chi- 
cago. 

So it looks like Nolan, who is a sa\'vy 
guy with plenty of other things to keep him 
busy (half a dozen companies diat he eidier 
set up or is heavily involved with running), 
has been seduced by something so cool 
that it made him give up the life of the 
independent entrepeneur and go to work 
for a big company. It must be diat Nolan 
really i>elieves in the potendal for die 
Amiga CD-ROM player to be a hot piece of 
consumer electronics. And diis is a guy 
who's seen quite a few technological 
wonder toys in his lime. 

The other interesting "tidbyte" from 
diis announcement is that Commodore 
may be showing die Amiga CD-ROM 
openly at CES, rather than behind closed 
doors. They might even have plans to ship 



it for die Christmas season, rather than 
waidnguntilsummerofl991. TheBandito 
has managed to cobble together a few 
more facts about tliis dream machine. It's 
a slick black device that looks like part of 
your stereo on the outside, but it's a true 
Amiga 500 on the inside. We're talking 1 
megabyte of memory, the new chip set, 
Workbench 2.0, and a full complement of 
ports. The Bandito hears about slick black 
peripherals that use infrared connections 
instead of cables. Joysticks, mice, even a 
keyboard that can be used from that couch 
you keep in front of the entertainment 
center. 

SOFTWARE TURNS SOFTER DEFT. 

Mediagenic is in big trouble lately. 
Fiscal year 1990 results are in, and diey look 
somewhat disappoindng. What would you 
say if your company lost $19 million dollars 
on S65 million in sales? You might say that 
you have a problem. What's caused all this? 
A combinadon of factors. Mediagenic has 
always had high expenses, and dieir sales 
slowed down in several areas while dieir 
expenses didn't. Then in April, Mediagenic 
lost a patent infringement suit filed in 1986 
by Magnavox; the court ruled diat Medi- 
agenic was distributing an Atari video game 
on which Magnavox had a patent. 

Mediagenic made some decisions to 
discontinue several divisions (Infocom, 
dieir Triton mail order business, and their 
Apple Presentation Tools). 
[Editor's note: Mediagenic has confirmed they 
worked out an agreement with Magnavox re- 
garding the infringement suit.1 

MORE COMMODORE NEWS 

Here's anodier interesting tidbit that 
die Bandito picked up while haunting the 
electronic cocktaU parties. Commodore 
officials are wooing Prodigy, die IBM/Sears 
telecommunications service, in an effort to 
get the service to appear on your favorite 
machine. Look for an announcement this 



summer if diey can put togedier a deal. 
While Prodigy is slow, it is graphics-based 
and vsTf shoR^. The Bandito suspeas that 
die software might take advantage of the 
Amiga's sound capabilides as well as 
graphics, to provide a very interesting and 
entertaining service. Imagine adverdsing 
widi tlieme music and sound effects! 

The Bandito hears that Commodore 
is also interested in other telecommunica- 
dons services to provide Amiga-specific 
support wjdi intelligent, graphical inter- 
faces that make telecommunicating easy. 
And why not? The Amiga should be able to 
do that better dian any other computer. 

Mass-market Amigas are coming 
soon to a major retailer near you. After 
many months of maneuvering and decid- 
ing. Commodore has finally determined to 
take the plunge. Look for announcements 
diis summer of a%'ailability for die Christ- 
mas buying season. Commodore has 
closed deals with some major retailers 
already, the Bandito hears. The A500 will 
hit with a street price of considerably under 
S500, or so die rumors go. The prospect has 
software developers optimisuc, especially 
if their softa'are can be among die few tides 
carried by the mass market stores. Look for 
a heavy concentration on games, with 
maybe a paint program and a word proces- 
sor thrown in for good measure. Oh, and 
some educational tides, too. 

So what's left for the computer retail 
store? Plenty. The retailers can provide all 
diose add-ons and options that the mass 
market won't deal with, like the A590. And 
diere's a good price drop in store for the 
A2000 series once die A3000 hits tlie stores, 
which is even better news for die retailers. 
Ho-w does a list price of S 1 499 sou nd for an 
A2000? Of course, the street price will be 
even lower. 

Will die A2000's get the spiffy new 
A3000 case? Maybe not, but diere is a new 
version of a case for the A2000 series in the 
works. Look for it to appear around Clirist- 
mas, if it can ever get approved. 



Amazing Computing V5. 7 ©1990 61 



SON OF WORKBENCH DEPT. 

Workbencli 2.0 appears to be gener- 
ating even more excitement than the 
A3000, among those familiar with both. 
Very slick, according to those who have 
played with it. There's still a number of 
bugs to be squashed, but by tlie time it 
comes out the software should be very 
stable. Developers seem to think that rev- 
ving their softv.'are wUl be fairly straightfor- 
ward, even for those who break a lot of 
rules. So save some dollars, because you'll 
be upgrading a lot this fall. 

Workbench 2.0 has a lot of very nice 
features. For instance, there are no more 
invisible files (a default icon is provided). 
You can create a virtual size screen up to 
the limiLs of chip 'RAM, and in tlie case of 
the A3000, that means a screen that could 
be thousands of pixels in both dimerssions. 
But the Bandito thinks tlie much cleaner 
graphics and the easy way you can custom- 
ize the fonts and graphics are what's most 
important. The \'isual look, especially on a 
640 X 480 non-interlaced screen, is stun- 
ning. It's \hfi equal of any other computer, 
and finally gets away from the rather 
clunky lo-res look of the original Work- 
bench. Appearance counts for a lot in this 
business, and now the Amiga will look like 
die serious computer it really is. 

Speaking of serious, the A3000 has a 
number of technical advances that aren't 
readily apparent, but will become more 
Important over die next few years as a basis 
for future advances in the Amiga architec- 
ture. For instance, writing data to chip and 
fast RAM is more than twice as fast as tiie 
A2500/30 because of the 32 bit wide data 
patli; this makes the video speed faster than 
the fastest new Macintosh, and four times 
as fast as standard VGA sp>eed on an IBM. 
Many of the new chips are CMOS construc- 
tion for high speed and low power con- 
sumption; eventually all of the custom 
chips will be CMOS, which will make for 
even greater speed (not to mention it 
makes a laptop Amiga easier to do). 

The new architecture and Work- 
bench 2.0 make it possible to create video 
cards with greater resolution tlian the stan- 
dard Amiga resolutions. In fact, some 
boards are already in the works. The Ban- 
dito hears of a board from tlie U.K. (code- 
named Hi-Tension) diat puts out l600 x 
1200 pixels, with 256 colors out of 16 
million. By putting a coprocessor on the 
add-in video board, given the speed of the 
new bus, it's possible to get the Amiga per- 
formance we're used to while still display- 
ing thousands of colors at very high resolu- 
tions. 



Commodore is also working in deep, 

dark secrecj' on a new sound chip, or 
actually a combination of chips at this 
point. There's no plan yet on how it will be 
brought to market, but look for full l6-bit 
sound, digital signal processing capability, 
and the capacity for compaa disc quality 
audio. 

A30OO has better game compatibility 
than the A2500, according to those who 
have played with it. Unlike the A2 500/30, 
though, you can't switch to a 68000 be- 
cause tliere is no 68000 around. So if you're 
a game player, you may have to give up 
some of your old favorites if you buy an 
A3000. 

Hey, Commodore, good job on the 
A3000 three page ad in tlie Wall Street 
Journal. It was very well executed, and 
made a good impression on those business 
rj'pes. Do tliat again, says the Bandito. 

The A30(K) is turning some heads at 
major software publishers. Hmm, since 
Commodore has worked out a deal with 
Novell for their network software on tlie 
Amiga, and Novell is merging with Lotus, 
do you think tliat...well, we'll see. Talks are 
continuing. 

So why is Commodore's stock down 
at 7 with all this good news? The Bandito 
doesn't know. Maybe it's because die take- 
over fever has subsided. Or, that the hard- 
ware market overall is slow. But even die 
pending relaxation of COCOM restrictions, 
which means that Aniigas will soon be sold 
in Eastern Europe has failed to boost tlie 
stock very much. Go figure. 

THE NEXT AMIGA DEFT. 

The engineers are hard at work on 
yet another Amiga, tentatively known as 
the A350O, diat will feature a 68040 as the 
CPU and a 1 .76-megab>te high density 
floppy that's backward compatible with die 
current floppies. The ability to read and 
write IBM and Mac disks will be easy to 
implement; in fact, this capability may go 
into Workbench 3.0, along v.'ith virtvial 
memor)' and other goodies. Workbench 
3.0 right now is just a list, but as the 
programmers finish up with bug-smashing 
for Workbench 2.0 tliey will be moving on 
to 3.0. 

AN APPLE FOR THE AMIGA? 

Stick widi die Bandito on this item; 
there's an Amiga connection coming up. 
Here's how it goes: Just when you Uiought 
that the Apple II was deader than Rob 
Lowe's film career, it rises again. Why? 
Because of the stranglehold that Apple II 



software has on the very large education 
market. The schools don't have all that 
much money to spend, so they want to 
keep using the software they already have. 
But on the other hand, they do want to 
move up to new machines (diough they are 
very sensitive to high prices). And the 
computer manufacturers realize that when 
Johnny uses a computer at school, Mommy 
and Daddy may buy him a similar one at 
home. .All this is causing a huge batde for 
the education market, witli Apple losing 
market share rapidly due to dieir over- 
priced, underpowered, nonpromoted 
Apple II line. 

IBM has just announced some new 
computers aimed squarely at tlie school 
market. And to sweeten the deal for IBM, 
Big Blue has just bought a company that 
makes an Apple lie clone on a card for 
IBMs; this card will sell for around S200 by 
IBM. So IBM is hoping tliat this will con- 
vince schools to go for IBMs with spiffj' 
color grapliics and an industry standard 
operating system, instead of Apples with 
no color (Macs) or ugly color (Apple lis). 

Meanwhile, Apple is trying hard to 
sell Macintoshes to schools. They just 
lowered the price to schools for low-end 
Macintoshes, providing a stunning 66% 
discount off the list price. So Mac Pius 
would sell for about $600, which is only a 
little more than it is actually worth. This is 
in anticipation of their low-cost Mac intro- 
duction in October; that machine will be 
priced even lower to schools. And Apple is 
talking about an Apple II emulator in 
software (a hardware Apple U emulator for 
more expensive Macs is also in the works). 
All tills emulation is designed to attract the 
education market, which is hip-deep in old 
Apple II software. They don't want to 
spend money on both new liardware and 
new software, so Apple II emulation is im- 
portant to them. 

Enter into all this Commodore. They 
have by far the best computer for schools: 
low priced, great color graphics, anima- 
tion, sound, an easy-to-use operating sys- 
tem, and some pretty' cool software. But 
wait! No Apple II compatibility, so the 
school can't use all that Apple II sofm-are. 
All, but die answer is on its way: an Amiga 
developer already known for emulation is 
said to be coming out with an Apple lie 
emulator for die Amiga. It's supposedly a 
combination of hardware and sofra'arc; 
you have to buy the Mega 11 chip from an 
Apple dealer to make it work. 

Commodore may offer tliis emulator 
themselves, in the same way that IBM has. 



62 Amazing Computing V5. 7 ©1990 



The Bandito hears that this is being looked 
at very seriously inside the company. After 
all, the A500 is the perfect computer for 
students. With the new low pricing, it 
would be very attractive to schools if they 
could run tlieir old Apple software. And 
Commodore would have a tremendous PR 
boost, as well as a great way to get more 
parents to buy Amigas as home computers. 
Or even Amiga CD-ROM players. 

Speaking of Apple lis, the Bandito 
diinks it's very amusing how tlie rats desert 
a sinking sHp. First it was all the Atari 
software publishers heading for the Amiga, 
once it became clear diat Atari software 
sold about as well as Communist Party 
memberships in East Gennany. Now, it's 
Apple II hardware peripherals manufactur- 
ers who have seen their native market dry 
up and blow away. No problem! They'll just 
change the labels on the stuff, switch a few 
resistors, and there they are — ^Amiga pe- 
ripherals! We'll see how well they do. 
There are already some well-established 
vendors in die Amiga market who have 
travelled a long, liard road to get where 
iliey are now, and they'll fight hard to keep 
dieir market share. To give them credit, tlte 
Bandito has noted some interesting ideas 
diat die new kids are working on; among 
diem is a fax modem for the Amiga. You 
should be able to buy one by the fall. Of 
course, by then you'll be seeing fax ma- 
chines for S300. 

OTHER NEWS 

M.A.S.T. still hasn't relea.sed their 
Flick-Off board; supposedly, it will ship 
within the next month. They apparendy 
have a deal with Hitatchi to manufacture a 
miniamrized VLSI \'ersion of the Flick-Off 
which plugs into the Denise socket. They 
are also claiming complete compatibility 
widi the ECS under WorkBench 2.0. 

Commodore 1 -year warranties? Yes, 
it's real. Commodore decided to get on the 
bandwagon and offer a real warranty for 
their products. It doesn't really cost them 
that much extra, since if a computer is 
going to die it usually does so when you 
plug it in for die first time or shortly 
thereafter. But it's a nice gesture, anyway. 

SOFTWARE WARS, CONTINUED . . . 

Looks like the word processing wars 
are heating up, with the new version of 
ProWrite going head to head with Pen Pal. 
Once again, batding software publishers 



help the buyers by providing more fea- 
tures. Which will be the first to take full 
advantage of the new super resolution 
modes offered by the ECS? Neither pub- 
lisher is talking, but they're both hard at 
work. The Bandito would like to work in 
1 280 by 400 for diose extra-long sentences. 

An update from the front in the HAM 
Paint Wars. The batdefield is quiet now, 
littered with the corpses of failed contend- 
ers. Photon Paint is no longer being adver- 
tised, and DeluxePhotolab never was. Digi- 
Paint 3 has become die favorite. The latest 
wrinkle is Digi-Mate 3 by MindWare, which 
adds animation capabilities to Digi-Paint 3 
by using the AEexx connection. If you've 
got enough memory, run Digi-View at the 
same time so that you can pull an image in, 
paint on it, then animate it. More RAM, 
anybody? Next up: a 24-bit version of Digi- 
Paint, with a host of new features that can 
be used in any mode. At least that's what is 
in the laboratories; there's no word on 
vhen it might make it to the marketplace. 

Finally, there's some conflict and 
some consolidation going on in the Amiga 
magazine market. Several names have dis- 
appeared, and the Bandito hears they may 
reappear later by combining operations. 
We'll see. 

Meanwhile, tune in here for the latest 
industry news and gossip. Has anyone no- 
ticed how some of the otlier magazines are 
no V,' running "rumors" columns by trying to 
steal the Bandito 's material? 

Nice tr^', but no panatela, fellas. Read 
tlie latest news here. Accept no imitators. 

THIS GAME IS WAR DEPT. 

Nintendo's hot-selling Gameboy 
portable video game gadget is going to get 
more competition than the Lynx. Sega 
Enterprises is producing the Gamegear 
(with a color LCD screen) for release in 
Japan possibly tliis September. It's similar 
in size to the Lynx, and the specs are inter- 
esting. The Gamegear uses an 8-bit Z80A 
CPU, and displays 32 colors from a palette 
of 4,096 on its 3.2-inch LCD screen. Sound 
familiar? 

Meanwhile, over 2 million Game- 
boys have already sold in Japan with almost 
2 million overseas. Total sales at home and 
abroad should hit ten million units by the 
end of the year. 

And NEC is heading to the market- 
place with a color LCD portable; their 
gimmick is that the unit uses the same 
cartridges as their TurboGrafx machine. 
Looks like a highly competitive place to be. 
Say, Commodore, how about a handheld 



Amiga* Digest 
Video Series 

Tape 1 - Mastering Workbench* 
and CLI* 

Step-by-stcp guide on how to get 
the most from (lie Workbench and 
CLI enviroiunents. FREE PD soft- 
ware disk and command summary. 

Tape 2 - DcskTopPtiblishing 
with PageStream** 

Complete instructio[i that takes you 
frotn Rinrt to fiiiiKli on two projects. 
FR.nB font.<;/clipart disk and key- 
board command .'iiimmary. 
$30 each or both for $50 

Includes UPS shipping VA res. aclH 4.5* Ini 
Cill r« htt OtKHiitf Cmpofl ind ProJod Hni* 
Grass Rools Video Productions 
r.O. Box i08R9 

Diirke, VA 22015 (703) 569-2652 
Ma.ttcrCard, VISA, Check, MO, COD 



Circle 10S on Reader Service card. 

Amiga? It could be done if you put the chips 
into CMOS. Now there would be the basis 
for a laptop... 

THIS AMIGA LOOKS LIKE AN 
ATARI ST DEPT. 

.\n Atari ST emulator for the Amiga? 
Why, you ask? Who knows, but there is one 
or two floating around. One of them is 
supposedly PD, created by some hackers in 
Australia, but it is also said to contain some 
Atari code diat is not in the public domain. 
And it doesn't work very well, from what 
the Bandito hears. Amore interesting prod- 
uct is said to be in development, combining 
hardware and software in a manner very 
similar to the successful A-Max emulator. 
Whedier anybody ever ships this product is 
a matter for another discussion . Before you 
laugh too hard, consider that such an 
emulator might help persuade a die-hard 
Atari fan to switch to die Amiga, because he 
could use much of his old ST software undl 
he had the bucks to buy Amiga software. 
Yeah, it sounds cheap, but then only tight- 
wads bought STs in the first place. 

In other Atari news, Atari Taiwan was 
cited for pirating MS-DOS business soft- 
ware. Atari says it was individual employ- 
ees, because all of dieir loyal employees 
use Atari STs in die office. Boy, the hard- 
ships you have to go through to work for 
Atari. By the way, Atari's latest sales figures 
show that sales and profits were both down 
for the last quarter; sales were only $85 
million (and still dropping). Say, maybe 
they should merge with Mediagenic... 

•AC' 



Amazing Computing V5. 7 ®1990 63 



It's ^iP. 

It's 

It's 



If 5 ^ij^' 



pf 



It's Here! 



AC GUIDE Amiga 



00^' 

HOT L 

AMIGA ^ 
SUMMER! 

NOW OVER 
560 VENDORS 
2700 PRODUCTS 
240 USER SEIOUPS 

PLUSi 

OVERSDSO 

FREEIY 

REOISTRlBUtABLt 

SOFTWARE 

PSOSRAMS 




COMPLETELY UPDATED 

• Over 2700 Products 

• More than 560 Vendors 

• More than 2050 Freely Redistributable programs 



Now at your local Amazing Dealer. 



One From Column A, 
Three From Column R. 
Using Amiga Menus, In C 



Cv» 



ttcuy 



Vvo^ 



U 



by Jim Fiore 



IN OUR LAST EPISODE, WE LEFT HELEN AS SHE WAS ABOUT TO BE CAPTURED 
by the giant, ferocious, gorilla from the planet Klien-Horst and — oops, sorry, wrong 
article. Anyway, last time (AC V4.2) we looked at tlie ground floor construction of an 
Amiga C program. 



As you may recall we opened a few libraries, a 
screen, a window, and responded to IDCMP events. 
This included items such as updating the mouse 
coordinates and ending the program. In this article we 
are going to expand on the original program. Our 
prime item of interest here is the addition of menus. 
We are also going to open a second window and look 
at one way of differentiating its IDCMP events from 
those of other windows. A few little odds and ends wiU 
be tlirown in as well. 

Anyone who has used Workbench knows what 
a menu is. Simply put, it allows for a convenient way 
of having the user set program attributes or initiate 
actions. Normally, menu selection is done with the 
mouse, but for keyboard intensive applications Csucli 



\ 



\ 



\ 



\ 



\ 



\ / 



/ 



\ 



as a word processor), command key 'short-cuts' may 
be preferable. On the Amiga, each window is allowed 
to have its own set of menus. Usually a window will 
have a number of menus, each containing several 
menu items. These menu items may even have their 
own set of sub-menu items. No matter how many 
menus, items, or sub-items exist in a program, only 
two different types of items/sub-items appear. Basi- 
cally, you can do one of two things with a menu; either 
set an ATTRIBUTE (as in the color of your word proc- 
essor's cursor), or initiate an ACTION (as in starting the 
spelling checker function). In order to setup menus, 
we must investigate two important Intuition struc- 
tures — the Menu structure and the Menultem struc- 
ture. 



\ 



\ 



./ 




Amazing Computing V5.7 <S-1990 



65 



struct Menu 
) 

struct Menu *NeKCMsnu; 

SHORT LefcEdge, TopEdge, Width, Height; 

USHCRT Flags; 

BYTE *MenuNaine; 

struct Mcnultem *FirstItein; 
) 

The NextMenu field of the Menu structure will allow 
us to make a linked list of menus for our windows. In this 
manner, we can have several menus for a given window. 
The last Menu in the list must have this field set to NULL 
(0 long). The next four fields determine placement along 
the windows title bar. Presently, TopEdge and Height are 
ignored, and info from the associated screen is used 
instead. Tlie Flags field is shared betn''een you and 
Intuition. The Flag MIDRAWN indicates diat diis menu is 
presently being displayed. The Flag ME^fUENABLED de- 
termines whether or not diis menu is cunently enabled, 
If menus are not enabled, the associated items will be 
ghosted, and thus die user will be unable to access tiiem. 
It is possible to enable/disable menus via the OnMenuQ 
and OffMenuO functions, MenuName is a pointer to a null 
terminated string, which will appear in the tide bar at the 
position marked by LeftEdge, The first item below this tide 
is linked in via the Firstltem field. The structure for menu 
items follows: 

scrucc Menultem 
t 

struct Menultein *NeKtIterti; 

SHORT LeftEdge/ TopEdge^ width. Height; 

OSHORr Flags; 

LONG MutualE:{cluQe; 

AFTR ItemFill; 

APTR SelectFill; 

SYTE Command; 

struct Menultem *SubIteni; 

USHORT NextSelect; 



As is tj'pical in Intuition strucaires, die first field 
allows a list of items to be strung together. As usual, die 
last item in the list must be set to NULL. The next four 
fields set the position of the item inside of the larger menu 
area and the size of the items select box. The Flag's field 
sets die type of item (CHECKIT if an attribute type, widi 
die initialized state given via CHECKED), the highlight 
mode (HIGHCOMP for color complement, HIGHBOXfor 
a surrounding box, HIGHIMAGE for alternate imager)', 
and HIGHNONE), whether or not rendering is via text or 
image (ITEMTEXT), and if the item has a command key 
shortcut (COMxMSEQ), I tend to diink of HIGHLMAGE as 
HIGHALTERNATE, since 'imagery' means either an Image 
strucaire OR an IntuiText stnicmre (just remember that 
SelectFill and ItemFiU must point to the same kind of data, 
as noted by ITEMTEXT). For mutually exclusive items, die 
flags MENUTOGGI^ and MENUTOGGLED are available. 
The MutuaiExclude field contains a 32 bit exclusion mask 
for attribute items. Simply place a 1 for each exclusive 
item in the appropriate bit posidon. For example, if the 
first diree items are mutually exclusive, then the first item 
will have this field set to binary 
00000000000000000000000000000110 (ie,, 0x6). If diere 
is no mutual exclusion, this value is zero. ItemFUl points 
to data used to render this item. Normally, this field points 
to an IntuiText structure, aldiough Image structures are 



possible. The SelectFill field points to data used if the 
HIGHIiMAGE form of higlilighdng is specified. Again, it is 
possible to use alternate IntuiText as well as alternate Image 
here. (A word of caudon: if you decide to use alternate text, 
make sure that die IntuiText draw mode is set to JAM2 and that 
the two strings are the same size . If this is not die case , you will 
end up with character 'o\'erstrike' problems). If die COMiVISEQ 
flag is set, die Command field should hold die character 
desired. This character should be declared inside single 
quotes, as in 'A'. The legal characters include all letters, 
numerals, and elements such as die comma, period, semi- 
colon, etc. If an item has sub items, the next field will point to 
an appropriate Menultem. Note that there is no such thing as 
a MenuSubltem stnicture, and diat sub-items cannot have sub- 
sub-items (this field is ignored). 

The final field is NextSelect. This field is used by Intuition 
for the purpose of allowing 'extended selection'. Whenever a 
menu event is received, this field should be examined to see 
if there are further menu choices, Iftliis is the last item chosen, 
diis field will be set to MENUNULL. If you would like to fiddle 
around with the text, here is the IntuiText structure declara- 
tion. 



struct IntuiText 
{ 

UBYTE FrontPen, eackPen; 

UBYTE DrauMode; 

SHORT LeftEdge, TopEdge; 

struct TejttAttr ^ITextFont; 

UBYTE TText; 

Struct IntuiText "NextText; 
) 



I* character and background colors */ 
/* jam: or JAM2 •/ 



NULL terminated string 



Briefly, the new program is going to open a second 
window (text_wind), attaching menus to this window and the 
original window. You will notice that the declaradons for die 
menus are in diree parts. The first part consists of the IntuiText 
declaradons which specify the character string used, a relauve 
posidon, and the text color. The second part is the lisdng of 
Menultems. I declare one large array since I'm not fond of 
giving every menu item its own name (besides, tliis way I get 
to declare everything in logical order). The third part is the 
declaration of die Menu. The main window has a single menu, 
while the text window has three menus (once again, an array 
is used). Our main window menu choices are simple: we can 
open or close die text window; quit die program: or, dirough 
the 'Odds and Ends' sub choices, either send tlie screen behind 
all of the other screens (like Workbencli), or flash die screen. 
Lf you select 'Screen to Back', you can set it front-most again 
by pressing left-Aniiga-M. Tlie text window menus let us write 
one of three messages to the text window, erase the messages 
individually, and set the color of the message. Note that the 
Color menu uses ATTRIBUTE items. Also of interest is the 
rather 'cheesy' (but effective) technique of erasing by simply 
rewriting in die background color. The final item on die Color 
menu is made using an image instead of text. Here is the 
strucmre for an Image: 

struct Image 
( 

SHORT LeftEdge, TopEdge; 

SHORT Width, Height, Depth; 

SHORT *ImageData; 

UBYTE PlanePick, PlaneOnOff; 

struct Image *NextImage; 
) 



66 



Amazing Computing V5.7 ©1990 




AC Disks 

Source code and executable programs included 
for all articles printed in Amazing Computing. 




AC V3J and AC V3.9 



Gels In MultiForlh Parts I i II: 
Learn how ta use Gels in MiilfiFonti. 
Aute: John Bushakfa 

FFP & IEEE: An Eiamfie ol using FFP 4 IEEE main 
roulines in ModLtla-2. Author: Sieve Fawiszewski 

CAI: A complete Compoler Aided Insiruciion progra-n 
with editor written in AmigaBASIC. AuUior: Paul 
Gastonguay 

Tumblin' Tots: A compiete game written in Assembly 
langjage. Save tns faisng babies in this game. Author: 
Davd Ashley 

VGed: A gadget editor ttiat atcms you lo easilf create 
gadgets. Tlie program then generates C code that you 
can use in your own pfograms. Author: Stephen 
Vermejien 

MenuEd: A nteru editor that allows you to easil^creale 
menus. Ttie program then generates C code that you 
can use in your own programs, Author David Pehrson 

Bsptead: A po»ier(ul spread sheet program written in 
AmigaBASIC. Author Bryan Cately 



ACV4JandACV44 



Fractals Pait I : An inlioducllcn 
10 the basics of fractals with e^tampies in AmigaBASIC, 
True BASIC, end C. Author: Paul Caslonguay 

Sttared Libraries: C source and executable code that 
shows ttie use of shared libraries. Author: John Baei 

HalllSort: Soning and inter^k communication in 
Modura-?. Author: Steve Fatwissewsl^; 

Double Playlleld: Sr<ow£ how to use dual playtields in 
AmigaBASIC- AoJior: Robert D'Asto 

■881 Math Pan I: Programrrjng the 68881 math 
coprocessor cliip in C Authcr: Read Ptedmore 

Args: Passing arguments to an AmigaBASIC program 
from Ihe CLI. Author: Bran Zupke 





ACV4,S8ndAC V4.6 

Digitized Sound: Using the 
AudiO-device to play d^itiied sounds 



in Hodu:a-2. Author: Len A. White 



'881 Math Part II: Pa/t II of programming the 68881 
ma^ copfocessor chip using a fractal sample. Author: 
Read Predmore 

At Your HequBst; Using the system-supplied re- 
questors from AmigaBASIC- Autf.or: John F. Weiderhirn 

Insia Sound; TaKJing the Amiga's sound Irom Ami- 
gaBASIC using the Wave command. Author: Greg 
Stnr^!e:iow 

MIDI Out: A MIDI program that you can expand upon. 
Wittien in C. Auth,or: Bt. Setaptirm Winsiow 

Diskless Compiler: Setting up a compiler environrrent 
that doesn't need floppies, Author: Chiick Raudonis 




AC V4.7 and AC V4.8 



Fractals Pari It: Part II on fractals and 
grajSiics on the Amiga in AmigaBASIC and True BASIC. 
Author; Paul Cas'iOnguay 

Analog Joyslietts: Tlie code for using analog |oys6cks on 
the Amiga Wiifen in C. Author: David Kinjer 

C Notes: A small program lo search a tile for a specific 
string in C, Author: Stephen Kemp 

Better Siring Gadgets: How lo tap the power of siting 
gadgets in C. Author: John Boshakra 

On Your Alert: Using the system's alerts from 
AmigaBASIC. Author: John F. Wiedethim 

Batch Files: Eieajting batch files from AmigaBASIC. 
Author: Mark Aydellotje 

C Noies: The beginning ota uBity program in C. Authot: 
Stephen Kemp 




Memory Squares: Test your memory with 
this AmigaBASIC game. Autfior Mike Morrison 

High Octane Colors: Use dithenng in AmigaBASIC to gel 
the appearance ol many more colors. Author: Robert 
D'Asto 

Cell Animation: Using eel animation in Moduia-S. Author: 
Nichetas Cirasetia 

Improving Graphics: Improve the way your program looks 
no maaer wh,at screen it opens on. In C. Authro: Richard 
Wanin 

Gels In Multl-f oflh-Patt 3: The thini and final part on 
using Gels in Forth, Author: John Bushak/a 

C Holes V4.9; Lookat a simple utlily program in C. Author: 
Siepiien Kemp 

1D_Cells: A program thai simulates a cne-dimensional 
cellular automata. Author: Russell Wallace 

Cotoutscope; A shareware program that shows different 
graphic designs. Author: Russell Wallace 

ShowlLBM: A prc^ram tiiat dsplays lo-res, hl-res, interlace 
and HAM IFF jJctuias. Author: Russeli Wallace 

LabyrimhJI: Holt playing lextadver.tura game. Author: 
Russell Wallace 

Most: Text file reader thai will display one or more files. 
The program will aulomaiically lormai the text lot you, 
Authot: Russell Wallace 

Temilnalor: A virus protection program. Author: Russell 
Wallace 




#Q gr' ACV4.1CI4AC V4,11 

' Typing Tutor: A program vifitlen in 
AmigeBASIC ^1 will help you intpnwe your typing. Author; 
fjiite Morrison 

Glatt'3 Gadgets: Using gadgets in Assembly language. 
Author: Jell Glall 



Function Evatuator: A progtam that accepts mathamati- 
cal functions and evataales them, Wntten in C. Author: 
Rar,dy Finch 

Fractals: Part III: AmigaBASIC code that shows you how 
to save/load pictures to disk. Author: Paul Castongiay 

More Requestors; Using system calls in AmigaBASIC to 
IjuiW requestors. Author: John Wiederhirn 

Multl-Forth; Implemeniing the ARP library Irom Forth, 
Author: Lonnie A. Watson 

Search Utility; A fie seareh uSIily written in C. Author; 
Stephen Kemp 

Fast Pics: Re-whting the pixel drawing routine in 
Assembly language lor ^ed. Author: Scott Stoinman 

64 Colors: Using extra-hall-MIe mode in AmigaBASIC. 
Author: Bryan Catiey 

Fast Fractals: A last tracts program written in C with 
Assembly language subroutines. Author: Hugo M, H, 
Lyppens 

Multitasking In Fortran: All the hard wrak is done here so 
you can mulftask in Fortran. Author: Jim Locker 



ACV4.12&ACV5.1 




Areix Part II: Information on how to set 
up your own ARexx programs with examples. Authot: 
Steve Gilmer. 

Leggo My LOGO: A Logo program thai generates a 
Christmas tree '^ilh decorations. Author: Mike Morrison. 

Trees and Recursion: An introduction to binary trees and 
how to use recursion. Written in C. Author: Forest AmokJ. 

C Notes: A look at r^o data compressing tec^iques in C. 
Aulhor: Stephen Kemp. 

Anlmatkin? BASICally; Using cell animation with 
AmiQaBASlG. Author: Mike Morrison 

Menu Builder: A uUirty to help buikj menus in your own 
programs. Written in C. Authot: Tony Preston. 

Dual Demo: How to use dual playfiekts to make your own 
arcade games. Written in C. Author Thomas Eshelman. 

Scanning the Screen; Paa lour in ihe fractals series, TTiis 
article covers drawing to the screen. In A,m^aBASIC and 
TrueBasic. Author: Pajl Castonguay, 

C Notes; Recursive lunctions in C. Author Stephen 
Kemp. 



ACV5.2.i5.3 




Dynamic Memotyl: Flexible siring 
gadget requester using dynamic memory allocation. 
Author: Randy Rnch. 

Call Assembly language from BASIC: Add speed to 
your programs with Assembly. A'jthor: Idartin F. Combs. 

Conundrum: An AmigaBASIC program that is a puzzle- 
like game, similar to the game Simon. Author: Dave 
Senger. 




Music Tiller: Generates a tiller display lo accompany 
the audio on a VCR recording. Author Bnan Zupise 

C Notes From the C GrouprWriSng luncSbns that 
accept a vajiaKe number of arguments. Author: Slepher 
Kemp 

Screen Saver: A quktk remedy Is prok>ng the lite ol yaui 
monitor. Authot: Bryan Catiey 



ACVS.4&AC5,5 

Bridging The 3.5" Chasm: Making 
Am'^ S-S" drives compatible with IBM 3.5' drives 
Author; Karl D. Belsom. 

Ham Sone: A neat program that illustrates pro^amming 
in HAy mode. Author: Robert D'Asto. 

Handling Gadget and Mouse IntuiEvertts: More 
gadgets in Assembly language. Author: Jell GlatL 

Super Bitmaps In BASIC: Hokjing a graphics display 
larger than the mojior screen. Author: Jason Cahili 

Rounding Off Your Numbers: Programming routines 
10 make rounding you numbers a little easier. Author: 
Sedgwick Simons 

Mouse Gadgets: Faster BASIC mouse input Author: 
Miichael Fahhon 

Prim Utility: A homemad print utility, with some extra 
added features Author: Brian Zupke 

Blo-leedback/Lle detector Device: Build your own lie 
detector device. Author John lovine. 

Do II By Remote: Suild an Amiga-opeialed remote 
controller for your home. Author: Andre Theberge 



AC VS.6 & V5.7 



Convergence: Pan live of the 
Fractal series. Author Pat;l Castonguay 

Amiga Turtle Graphics: Computer graphics and 
programming wilh a LOCO-like graphics system. Author 
Dylan MnNamee 

C Notes: Doing linked llstand douMy linked lists In C. 
Author Stephen Kemp 

Tree Traversal & Tree Search : Two common mettuds 
lor traversing trees. Author; Forest W. Arnold 

Eieaptlonal Conduct: A quick response lo user 
requests, achieved through effeci'nt program logic. 
Author: Mark Cashman, 

Getting to the Point: Custom Intuition pointers in 
AmigaBASIC. Author: Robert D'Asto 

Crunchy Frog II; Adding windows and other odds and 
ends. Author: Jim Fiore 

Synchroncltlty: High: and left brain laterafization, 
Author: John lovine 

C Notes From the C Group: Doubly linked lists 
revisited. Author; Stephen Kemp 

Poor Man's Spreadsheet: A simple spreadsheet 
program that demonstrates manipulating arrays. Author: 
Geny L. Penrose. 




For PDS orders, please use form on page 96 
Visa and MasterCard is available on orders of S20.00 or more. 



Amazing Computing V5. 7 © 1990 67 



BRIDGEBOARD USERS! 

Don't waste money, slots, or desk space buying extra 
IBM-compatible or Amiga floppy drives! The Bridge Drive 
Commander + gives you direct access to all your internal 
and external Amiga drives from the Bridgeboard, and direct 
access to IBM type 360K and 720K drives from AmigaDOS. 
Bridge Drive Commander + is totally transparent and 
automatic. Put an IBM type disk in any drive and use it just 
like on any IBM compatible! Put in an Amiga disk and return 
to Amiga use! Just that simple, just that fast! One drive can 
use Amiga disks at the same time another is using IBM- 
compatible disks. Disks are completely usable by other 
Amiga and IBM-compatible computers. All hardware, no 
softvi/are drivers to load, no precious memory or expansion 
slots used up. Plugs onto motherboard at internal drive con- 
nector. (No soldering or wiring changes.) Compatible with 
all Bridgeboards {8088, 80286), SideCar. all accelerator 
boards (any 680x0), hard disks and other hardware and 
software. 

Bridge Drive Commander -h S 97.50 

MJ SYSTEMS 

Dept 10A, 1222 Brookwood Road, Madison. Wl 5371 1 

1-800-448-4564 

(24 hours MasterCard /VISA) 

Produci names are trademarks ot iheir respective companses. 
Circle 149 on Reader Service card. 



The Width, Height, and Depth fields describe the layout of the 
image data pointed to by tlie ImageData field. If you use fewer 
bitplanes than the screen allows, you can decide where to place 
your bitplanes with the PlanePick field. The remaining bitplane.s are 
turned on or off according to to the PlaneOnOff field. Our image 
is a single bit plane, so please feel free to experiment witli the 
PlanePick and PlaneOnOff fields. .'Uso, when creating Image data, 
you will normally do so with a 'tool' tliat looks like a paint program, 
but which outputs C .source directly. These toots are available 
commercially and in the public domain. 

When using menus, you have to inform Intuition that a 
particular menu should be attached to a given window through the 
SetMenuStripO function. The complimentary function is called 
ClearMenuStripO and is called in damp_mopO. It is possible to 
attach different menus to a window by Clearing and Setting menu 
Strips. Note that both windows and their menus are created and 
displayed when the program is first run. 

Since we now^ have t\vo windows opened, w-e must deal with 
IDCMP e\'ents from two sources. There are different ways of doing 
diis. In this program we simply WaitO on signals from eitlier 
window. Note tliat it is necessary to test for the existence of the text 
window, since it is possible to dose it and still have the program 
remain active. Wlien the program is signaled, we compare tlie 
■wait_mask to the available wait bits to determine which window 
was used. At this point we branch to one of two IDCMP routines. 
Note that the new handle„text_messagesO routine is basically a 
copy of the old handle_main_messagesO fttnction. 



In order to process the IDCMP MENUPICK messages, we 
have two functions; handle_text_menu() and 
handle_main_menuO- Botli of these functions do essentially the 
same thing; that is, they break down the menu code variable and 
respond accordingly. Note chat each handle_menu routine contains 
a large whileO loop. This is used to capaire 'extended select' menu 
items (the next item is obtained by examining the NextSelect field 
of tlie Menultem returned from the call to Iten^\ddressO). Inside 
the loop, the macro MENUNUMO returns the ordinal value of our 
selected menu. ITEMNUMO is used to find die ordinal value of the 
chosen menu item. If this item has sub items, dieir ordinal value is 
obtained I'rom the macro SUBNUMO. In this way we can 'track 
down' any menu choice. Note that the first menu, item, or sub item 
actually holds position and not position 1 (just like everjThing else 
in C, numbering starts at 0!). 

Tliere are two remaining items in the program that I would 
like to draw to your attention. First, you will notice that our old 
dummy handler hand!e_main_newsizeO has been modified. In 
working with tlte old program, you may have noticed tiiat shrinking 
the main window destroys the sine wrave drawing. It would be nice 
if we could redisplay the wave when the window is increased in 
size again. That is exactly what the call to setup_main_v.'indO does. 
If you shrink the window and then expand it, you wiU notice tliat 
the wave is redra-p.T>. Admittedly, diis is very CRide, but it does show 
how NEWSIZE events can be used. A better scheme would examine 
the size and see if redrawing is required (after all, you could make 
the window larger than its initial size with no destruction of the 
graph). With particularh' complex renderings you might even 
choose to do your own image backup and copying. The second 
item of interest is the function close_text_windowO- Note that this 
function can be called from three places: 1) user selects tlie text 
windows Close gadget, 2) user selects 'Close Text Window' from 
the main menu, and 3) user kills program either from tlie main 
menu or the main windows Close gadget (both call damp_mopO, 
which calls close_text_^'indowO). The first thing you ^"ill notice in 
this function is that the text windows IDCMP que is drained of any 
•left over' messages (such as MOUSEMON^s). Next, the menu strip 
is cleared and die window closed. Finally, the test_wind pointer is 
NULLed. This last line is 'VERY important. If we do this consistently, 
we can effecti\'ely use tfiis pointer as a 'window exists' flag. In otlier 
words, if the value of tlie pointer is zero, we know that the window 
is not open, and therefore we cannot render to it or expect to 
receive IDCiMP messages from it. On the other hand, if the pointer 
is non-null, we can assume tliat the window is open and available, 
You will nodce diat diis technique is used tliroughout diis program. 
In essence, statements such as if(text_wind) are really shortliand 
for saying 'If this window is presently open, tlien...'. Examples are 
found in the mainO FOREVER loop and in 
handle_niain_mess3gesO (in case the user tries to open die text 
window and it is already open). 

Well, that about wraps it up for diis installment. At diis point 
you now have exposure to some of the important base elements of 
an ..^niiga program. There are a number of interesting topics yet to 
be explored, though, so stay tuned! 

Author's info: 

Jim Fiore is the resident C programmer at dissidents in Utica, 
N'T. He has a number of years of teaching experience in Electrical 
Engineering Technology' as well. In his spare time Jim enjoys falling 
off of things, and listening to Frank Zappa, King Crimson, and Kate 
Bush. He may be contacted through BIX as jfiore. 



68 



Amazing Computing V5.7 ©1990 



Listing 



/* CrunchyFrog2 .C 

Jim Fiore S dlaaidents 10/9/38, Updated B/22/B9. This program is 
copyrighted, however, you can use it, with the exception of 
distribution for & profin. 

cor:ipileci and linked with Manx Aztec C v3»6 under AniigaOOS 1-3 

cc +L. Cru;iehyFrog2.c 

In +ccHb CrunchyFrog2 .o -lra32 -lc32 

iRiage data r.*jst be in CHIP RAM. { *ccib for Manx is the easy way out 



I include "functions .h" 

linclude * intui t ion /intuit ton. h" 

(include **math . h" 



/* 



defines 



/' MyTejtt{"RastPort, Xposition, Yposition, char 'buffer) "/ 
♦define MyText (r, K^y^b) Move Mr), (x), (y) J ; Tent! (rl , (b) ,strlen(b) I 



fdefifie intuition^rev 33l 

♦define GRA?HICS_REV 33L 

♦define DEPTK 3 

♦define MAX COLORS B /• 2 raised to D£&tH 



/* — 



Global^ 



struct intuitionSase 
struct GfxBase 
SCruC' WindDW 
struct Screen 
struct Viewport 



■IntuicionBase-OL; 

»Gfx3ase=0L; 

• ma in_w i nd - L ; 

'':n=iin_scrn-OL; 

*view_porc=OL; 




MAN SAYS, 



1 - AMIGA Computer 
AND 1 - SaxMan Accounting System 
or 1 - BUUng & Disbursements System 

and YOU RE IN BUSINESS!! 

SuMan SyKlemc hac taken the best data bate available for the 
AMIGA(tin)-SUPBRBASE PROFESSIONAL (tm) from Precision 
Sofrware, Lid. -and created two very powerful and easy to use 
accounting syEtems. 

Billing &. DisbursemenltCmi), deEigned for the small businesE, 
pioccsscE cash and credit Kales, printE invoiccE and EiatemenlE, and ages 
accounlE receivable. It tracks cash diEbursemcniE, prints a check 
legister and reports on general ledger accountE sorted by category. 

List Price - $249,95 

SaxMas Accounting SyEtem(tm] is a completely integrated, 
multi-diviEioDal accounting system with General Ledger aE its hub. It 
bandies Accounts Receivable, Accounts Payable, Payroll, Job Cost 
Analysis, Inventory Control, and a revolutionary new approach to 
payroll tax tables! Many easy to use features allow yoo to follow all 
data from source to final leportiog in the General Ledger. 

List Price S4W.95 

Call: SA)^MAN SYSTEMS 

400 Walnut St., Suite 403 
Redwood City, CA 94063 




(415)368-6499 



Circle 103 on Header Service card. 



/■ use the SO character topaz font for the screen lettering */ 

struct TextAttr topas80_^ont_attr"l 
(UBITTE -) "topaz. font", 
TOPRZ_ElGHTi, 
FS_}10RMAL, 
FPF ROMFQIiT ) ; 



struct NewSceeen ns-i 
0, 0, 
6.10, 200, 
DEPTH, 0, 1, 
HIRES, 

SCREEKBEKIH3 1 CUSTOMSCHEEN, 
stopoi60_for\t_atcr, 
{UBVTE •)" Dinsdale's Screen 
NULL, NOLL ),- 



/• LeftEdge, TopEdge */ 

/• width. Height •/ 

/* Depth. DetailPen, aioc5tPen 

/• ViewKodes "/ 

/' TiTe */ 

/■• Font ■/ 

/• DefaulcTitle •/ 

/• Gadgets, CugtomBitHap ■/ 



struct NewWindow ni_nw"{ 
50, 20, 
3O0, 120, 
-1, -1, 

KENUPICK 1 GADGETUP [ GASGETDCWN 
RAWKEy I CLOSEWIKOOM I MOUSEMOVS 
MOUSEBUTrONS I NEMSIZB, 
3HART REFRESH I ACTIVATE I \ 
MINDOMSIZING I WIMDOWCLOSE I \ 
MIMDOWDEPTH I KIHDOWDHAG I \ 
REPORTMOUSH, 
mjLt, NULL, 

(OBlfTE ■)" Main Window ", 
NULL, MULL, 
100, 50, 
£40, 200, 
COSTOHSCREES 1 ; 



/• LaftEdge, TopEdge */ 

/• Width, Height "/ 

/• DetailPen, BicckPsn (default) 

I \ 

I \ 

/• IDCMPFlags •/ 



/■• Flags */ 

/" FlrstGidget, CheckMarlt •/ 

/• Title •/ 

/• Screen, BitMap */ 

/• KinKidth, MlnHelght */ 

/" Maxwidth, HaxHeight •/ 

/• Type ■/ 



/" data declarations which are new for 2 •/ 

UBYTE inS9l["0)-{"Soine sajr that Heaven Is Hell"J; 
UBYTE rasg2[~Dl-("Some say Chat Hell is Heaven"]; 
UBYTE .Tisg^nOl-t^^Some say Ha Ha Ha"}; 



struct NewVfindow tJ4t_nw=l 
250, 50, / 

250, 100, / 

-I. -1, ' 

KENUPICK I GMGETUP I GADGETDOWN I \ 
RAWKEY I CLOSEKINDOW I MOUSEMOVE I \ 
M0USEBUT7ONS I KEMSIZE, 
SKART_REFR£SH I ACTIVATE I \ 
WINDOXSIZING I WINDOWCLOSE 1 \ 
WINDOWDEPTK I HINDOHDRAG 1 \ 
REPORTHOaSE, 
NULL, NULL, 

(UBKTE *1" Text Window ", 
HULL, NULL, 
100, 50, 
640, 200, 
CUSTOKSCREEN 1; 



LeftEdge, TopEdge • / 

Width, Height ■/ 

DetailPen, BlockPen (default) •/ 



/• tDCMPFlags 



/* Flags •/ 

/• FirstGadget, CheckMarlc •/ 

/- Title •/ 

/• Screen, SitMap •/ 

/■ MlnWidch, MinHeight •/ 

/" MaKWidth, MaxHeight "/ 

/" Type •/ 



struct Window 



'teKt Hind"OL; 



/• isain aenu segment */ 

struct IntulText »iain_i:xt []■{ 

(0,1, JAMl, 3,1, HULL, (UBYTE "["Open TeKt Window"!, 

(0,1, JAM1,3, l.NULL, lUBYTE ')"Close Text Window"], 

10,1, JA-Ml, 3,1, HULL, lUBYTE •] "Odds and Ends"), 

(0,1, JAMl, 3,1, NULL, (UBYTE -l-Flash Screen"), 

10, l,JAm, 3,1, NULL, (UBYTE -J-Screen to BacK"l, 

|0,1,JAK1,3, l.NULL, (UBVTE "j'-Quit-"), )! 



struct Hehulcem raain_mi!J-( 
|Smaia_tsl!ll,0,0,H4,10, 
(ITEMTSXT I ITEKSKABLED 1 HIGHCDMP), 

HULL, IMTR) tmain_itxt[0] , HULL, HULL), 

(tmain_ni [21 , 0, 10, m, 10, 
IITEMTEXT 1 ITE^SENABLED I HIGHCOMP) , 
NULL, (A?TRlsn-.ain_ltxt [11, NULL, NULL], 

|Smain_ni[51,O,2O,H1,10, 
(ITEMTEXT I ITEMENABLED I HIGHC0^5P1, 
NULL , I AP TR) tnain_itxt [ 2 1 , NULL, NULL, inain_mi 1 3 ) ) , 



Amazing Computing V5. 7 ©1990 



69 



Un!ain_mi [4 1,120, 0,130, 10, 
(IlEMTEXT [ I1E^ENABLED I HIGHCOMP), 
NULL, (MTR) S!nain_itxt [31 ,NULL,NUH1, 

fNULL,120,10,i30,10, 
(ITEMTSXT I ITEMENABLED I HIGKCOMPl , 
NULL, |A?TRlSKain_ltst [4] ,NULL,NDLL), 

(NULL, 0,30, 114, 10, 
(ITEHTEXl I ITEMENABLED I HIGHCOMP), 
HULL, (APTRl 5main_li;xt[Sl,NULL,NUI.Ll, i ,- 

struct Xer.-J nainjnsnu ={SuLL,O,0, 72, 0, MEKOESiBLED, 
■<,£maln_mi[ai ); 



/* texr_wind segr?.ent 



USHORT iiaage_da-a [ 1 = 

/* 48 wide by 20 high by 1 

/* plain number */ 



lane deep ■/ 



OstSffO, 
0x601f, 
0x3800, 
0x0780, 
0K007e, 
0x0003, 
0x0000, 
0x007f, 
DxOOcO, 
OitOOcO, 
OnOOTS, 
OxOOcf, 
OkOOcO, 
0x0078, 
0x003f, 
0x0060, 
0x0070, 
OxODOf, 
0x0000, 
0x0000, 



okoooo, 

OxfOOO, 
OxlfOO, 
OxOleO, 
axao3£, 

OxelcO, 
0x3700, 
OxdcQC, 
0x3001, 
0x6007, 
OxTOld, 
0xfc2B, 
0x3;Ea, 
0x0020, 
OxffeO, 
0x0040, 
DxOOcO, 

Oxrfff, 

0x0000, 
0x0000, 



OxOOOO, 
0x0000, 
0x0000, 
0x0000, 
0x0000, 
OxfeOO, 
Ox03e7, 
0x003e, 
0x0002, 
0x0002, 
OxcOOJ, 
0K3fe2, 
0x0006, 
0x0004, 
0x0004, 
0x0004, 
0x0031, 
0xe3ec, 
Oxfc7f, 
0x0000 1; 



struct Iriage r.er.u_i:aaqe = { CO, 48,20,1, ir.ace_tj5ta, 0x2, 0x0, NULL 1 

struct IntuiText text_itxc [] ={ 

(0,1, JAMl, 2,1, NULL, (DBYTE •)"MesSoge I'M, 

{0,1, JAMl, 2,1, NULL, lUaXTE *)"MesHage 2"1, 

tO,l, JAM1,2,1,KULL, IU3';te "("Message 3"), 

iO,l, JAMl, 2,1, NULL, lUBYTE 'I'Message 1"1, 

(0,1, JAMl, 2,1, MULL, IU3YTE ')"Kessage 2"(, 

(0,1, JAMl, 2,1, NULL, (UBYTE ■)"Kessage 3"), 

(0, 1, JAMi,2+CHECKMIDTH, 1,NULL, (UBXTE '("Color 1"), 

(2, 1, JAl-:i,2+CHECKHIDTH,l,NnLL, (U3YTE *)"ColOTr 2"), 

(3,1, JAMl, 2+CHECKMIDTH,l, NULL, (UBYTE •l"Color 3"1,1; 



/• Draw •/ 

struct Menulten text_ini []=t1 

(Stext_mi[ll,0,0, (90+COKKWIDTH) , 10, 
(ITEMTEXT i ITEMESABLED I HIGHCOKP I C0MM3EQ) , 
NULL, (APTR) Stext_itxt [ J , NULL, ' 1 ' 1 , 

|Stext_niit2],0,10, (90+COMMKIDTH),10, 
CTEMTEXT I ITEMENABLED I HIGjiCOMP I COMMSEQ) , 
NULL, (APTR) 6Eexc_itxt [I! ,NULL, '2 ' } , 

(NULL, 0,20, (90+COI'M';:dtK),10, 
(ITEMTEXT I ITEKENABLED I HIGKCO!-!? I CO^iMSEQi , 
NULL, (APTR)StEXt_itxtt2] ,NULL,'3' ), 

/« Erase */ 

(Stext_ni i4] , 0,0, (90*COMKVtlD7Hl , 10, 
CTEMrEXr I r?EKENABLSD I H.lGriCO!.!? I COMMSEQl , 
NULL, (APTR>5text_itxtt31,NULL, '4' ), 

fStext_IIli[5],0,10, OO^CGMtlWDTal ,10, 
(ITEiaEXr I ITEi-SKAELED I HIGHCOM? I COMMSEQ 1 , 
NULL, (APiRl stext_itxt [41 ,:wLL, ' 5' ) , 

(NULL, 0,20, (90»CC^^^i■IIDra) , 10, 

(ITEXTEXT I ITEi-IEKABLED I HIGHCCM? I COKMSEQl , 
HULL, (APTRIStext_itxt[5] , NULL, '6'), 

/• Drawl r.c color ■/ 



(Stext_rrii [7] ,0,0, (75+CHECKMIDT.H+COMMWIBTH) , 10, 

(ITEMTEXT I ITEMEMABLED I HIGHCOHP I COKHSEQ I CHECKED t CKECKIT 1 
MENUIOGGLEI , 

0x6, (A?TR)Stext_ltxt[61,NULL, '7', NULL), 

(itext_ni [B! ,0,10, (75vCKECX;-;iDTH+C0X>riJIDTK) , 10, 



[ITEKTEXT I ITEMENABLED I HIGHCO.--!? 1 COMKSEQ I CHECKIT I MENDTOGGLE) , 
DxS, (APTRlitext_icxtI71 ,NULL, '8', NULL), 

{itexC_nl[9],D,20, (75+CHECKl«DTH+CO}OfflIDTH),10, 

(ITEKTEXT I ITEKENASIEO I HIGHCOie I COIC.SEQ I CKECKIT I t-EtJUTOGGLE) , 
0x3 , (A?TR) stext_itxt i B i , NULL, ' 9 ' , mil,!.] , 

[HULL, 10,30,48,20, 
{ ITEMENABLED I HIGHBOX 1 , 
NULL, (APTR|Sinenu_inage,NULL, NULL, NULL), 1; 



struct Menu text_nenu 1 1 = { 

(Stext_menutlI,0,0,4a,0,MENUENABLED, "Draw ", SteRC_ni (01 1 , 
((text menu[2],SO,0,56,0,MENlJENASI.ED, "Erase ", 4text_ml [3] ) , 
(HULL,TlO,0,36,0,KENUENABLED, "Color ", Stext_l,i [61 i, 1 ; 



done with data declarations, new for 2 "/ 



DSHORT Eys_colOr_table[MAX_COL0RSI«i Oxabc, 0x130, OxfOO, OxaaO, OxbfO, 

0x54f, OxbOe, Ox3fta},- 



VOID open_all(), darfip_n^op ( ) , handle_nain_n\essages () , setup_inain_wiiid , 
handie_mair._rawkey () , handle_r!ain_nienu ( 1 , handie_!nain_gadget:down [) , 
handle :nain_gadgetup , handle_jnain_,r,QUSeiJUttons , 
handle_main_newsizeO ; 

/* new for 2 */ 

VOID handle_text_mes3ages , handle^text__nenu [) , close_text_window ( 1 ,- 



—start of rraino- 



/* this function altered for 2 */ 
naln 



( 



LONG rr.aln_wait_bit, w£it_r.ask, text_wait_bit /' <- new for 2 */; 

/* — open Intuition and Graphics libs — '/ 
open all ; 



if ( (r:.ain_scrn = (struct Screen '>0penScreen(4ns) ) ==» KULL i 
da:r.p_siop ( 1 ; 

ni_nw. Screen =:riain_scrn; 

if ( ([iiain_wir.d - (struct window ") Cpenwindow (£rr._nwl 1 ^^ NULL) 
damp_nop ( 1 ; 



/* stuff that is new far 2 */ 
SetMenuStrip ( raain__wind, snain_Renu ) ; 

txt_nw .Screen*ma in_scrn ; 

if ( (text_wind = (struct Window *) OpenWindow (Scxt_nwM »= NULL) 
d«fftp_fflOp ( ) ; 

SetKenuStrip ( text_wind, text^.Tisnu ); 

/« end of new fot 2 */ 

/* set screen colors to our choices ■/ 
vicw^port = Uiev^'PortAdcress (:Rain_wind) ,- 
LoadRG3< (view_tcrc, sys_color_table, !4AX_C0L0RS ) ; 
ScreenToPrcnt (r-Lain_scrn) ; 

/* do some drawing •/ 
setup_inain_wind ( ) ; 

/* ^ set up IDCM? read loop. This loop altered for 1 - '/ 

FOREVER /« also known as (or(;;) •/ 

( 

jiain_wait_bit " l«naln_wind->0serPort->np_Sig3ic; /" get 
niain_wind' s */ 
/• signal bit *l 



70 



Amazing Computing V5. 7 ©1990 



if ( Cext_wind 1 

texc_wait_bit = l«texc_win<J->User?ort->mp_SigBit; /* get 



text_wind's*/ 

else 
bit ^/ 

Lent wait, bit ^ OL; 



/• signal 



W4ic_ma3)c - Mftlt ( niain_waic_t)it I text_wait_bit ) ,' /* go to 
aleap til user does soffiethlng "/ 

if (wair_tnasi: i i:iain_wdit_bit) /• true if m*in wind weke up 
-/ ~ 

handle_:!iain_-essages {) ; 

if (waitjnask & te>:t_wait_hit} /• z—^s if ::iair._wind voice up 

handle_^text_niessages (J ; 



/* end of main (> */ 



opens Intuition and Graphics libs 



VOID open_alin 

{ 

IntultionBase" (struct IntuiCionBase 
*1 OpenLibrary {^'intuition . library", IN"U1TI0N_REV) ; 

If UntuitionBase--HOLL) damp_mop (> ; 



Gf xBases (struct Gf>:Base '1 OpenLibrary ("qraphics. library '^^ 
GRAPHICS_REV); 



if IGfxBase-'^NULL) danp_[r.op {) ; 



) 



closes windows, screen, Gratiliics, Intuition 



/* this function altered for 2 */ 
VOID dairip_mop() 



CANVAS 

For the Amiga 
This Is a three disk collection of 13 animation 
demos and 5 pictures that you can load into your 
favorite animation editor, such as Deluxe Paint 
ili. This collection of animations was developed 
In the style of traditional animation. One meg. 
of memory is suggested as these animations run 
at i5fps and range from 60 to 120 frames long. 
Price: $30-00 {*%2 00 Shipping) 



LUNAR 
Construction Disks 

Create your own fantastic scenes of lunar 
landscapes, tumbling asterlods, and sparkling 
stars on the Amiga with these high quality, full 
color images This 2 disk set contains over 
100 Pictures, brushes, and anim brushes -- your 
on]y iimiraMfinwili be your imagination. 
Price S25.00 ("$2.00 shipping) 



To order CANVAS or LUNAR Construction disk, 

please send a check or money order to: 

Silver Fox Software 

P.O Box 55MI3 

Dallas, Tx, 75355-1413 

Call (214) 349-1681 for (nformatlon and Dealer inquiries. 



OirclG 105 on Reader Service card. 



struct: IncuiMessage *.'rLes; 

if ( inain_wiiid I 

( /• Drain the IDCM?. Actually, this isn't really required 

as this memory will be reclaimed, but I sleep better if I do it •/ 
whilel mes=(struct IntuiKessage "IGetysgl nain_-jlnd->UserPort ) 
I 

ReplyMsc { rises ) ; 



ClearMenuStrip ( main_wind ) ? 
Closewindowl main wind ) ; 



/" <- new for 2 •/ 



if < text wind ) 



clDse_text_windo-«-() ; /* <- new for 2 "/ 



if 1 iiiain_scrn ) CloseScreent naiii_scrn ) ,- 

if ( GfxSase 1 CloseLibrary I Gf:!Base J; 

if < IntuitionBase ] CloseLibrary | IntuitionBase I ; 
exit (FM.SE); 

} 

VOID 3etup_nain_wind(l /• draws x, y axis and a sine wave -/ 
I 

atruct RastPort 'rest - main_wind->BPort; 

double Xr V'' 

/" Draw X, y axis. First set the pen color to pen 4. The origin 
will be at pcint 20, 50, the max swing will be */- 35 pixels, ana 
the length will be 200 pixels •/ 

SetAPenI rast, 41; 

Move{ rast^ ZO, 15>; 
Draw< rast, 20, 95); 

Move( raat, 20, 50); 
DraK< rast, 220, SO); 

/* Now for the sine wave. Kove to the origin, and to see it more 
clearly, change to pen 5 */ 

Mave( rast, 20, 501 ; 
S«tAPen< rast, 5J ; 

tozi X""1.0/ x<200.0; x»x+l,0) 



y - -1.0 • (35.0 ■ Sim x/lO.e II; 

/* Offset y so it scradles the x axis */ 
y ■ y + 50.0; 

/■ Plot line segment. Note the x offset. Cast is important] '/ 
Draw( East, ISHORTlx+20, ISHORTly ) ,- 



/* Print the mouse position titles (X, I) next to where the values will 
appear •/ 

SetAPent rast, 6} f 

MyTextC raat, 20, 100, "X"| ; 

MyText ( rast, 60, 100, "y"! ; 



VOID update^coords ( x, y I /■ prints the mouse x y position •/ 
SHORT x,y; 



UBYTE buflS),- 

struct RastPort *rast = main wind->RPort; 



sprintf( buf, "»4d", xl ; 
HyText I rast, 30, 100, buf); 



sprint f( buf, -%4d-, y); 
MyTextt rast, 90, 100, buf » ,- 



/* duiwny handlers, to be used In the future, follow '/ 

VOID handXe_main_mousebuttons ( code ) 

USHORT code; 

i 



Amazing Computing V5. 7 ©1990 



71 



VOID hdnaie_main_rawkey I code, qualifier ) 
USHORT code, qualifier; 



VOID handle_iT\ain_ga^ jetdown < address ) 



VCID handle_raairi_gadge::up ( address } 
A?7R address; 



/* this function altered for Z •/ 

VOID handle_nain_newsi.ze ( windoM_ptr ) 

struct window 'Kir.dow_jjLr; 

i 

secup main windO; 
} 



/* this function new for 2 */ 
VOID close_teKt_window () 
^ 
struct IntuiMessage »mes; 

while! mes » (struct IntuiMessage * ) GetMsg ( teKt_wind->UscrPDrt 1 ) 
ReplyMsgi mes I ,- 

Clea]rMenuStrip( text_vfind ); 
CloseWindowf teKC_wind ); 
ceKC_wind ^ OL; 
1 



/• this function altered for 2. It used to be a duTJsy handler */ 
VOID handle_mai.i_menii{ cod* > 
USHORT code; 
{ 

while ( codei^KEINUNULL ) 

i 

switch (MSNUNUHi code )) 
I 

case : / • Project •/ 

switch aTEl-CiUi-ii code n 
{ 

zase Q: /■ open text window ■/ 

it{ text_-**ir;d ) 
( /* already open! ■/ 

DisplayBeept inaia_3crn i; 
i 

else /* open it '/ 

! 

tKt_nw. Screen = niain_scrn? 
if ( (text_wind - (struct Window 
*)OpenWindow(it>:t_nw) ) \ 

— NULL) break; 
Set^Senv;StrifI{ teKt_wir.d, text_menu 1; 
1 
breaic; 

case 1: /• close text window •/ 

iff teKt_wind } /" don't try to close if lexisc */ 

close_teKt_window ( ) ; 
break; 



case 2: 

switch iSUBMUMI code )) 



/* odds and ends '/ 



case 0: /' flash screen •/ 

DisplaySeQp{ rnain_scrn ); 
break; 

case 1: /• screen to back "/ 

ScrecnToBack ( niain_scrn 1 : 
break; 



break; 

Case 3: 

damp_taop<) ; 
break; 



/• quit -/ 



) /* end of switch (ITEKNUH( code 11 */ 
break; 



default: 
break; 



1 /• end of switch (MENUNUM I Code )) •/ 



code " ItemAddress ( £main_ii:enu, code l ->NeKtSelect 
\ /* end of while ( code != MEtTJKULL ) -/ 



/" this function new for 2 '/ 
VOID handle_text_menu{ code i 
USHORT COde; 



{ 



struct RastPort *rp ^ text_wind->R?ort; 
static USHORT pen =■ 1; 

while ( COdel-MENUKULL ) 



/* Draw ■/ 



switch |hfENUHUM{ code >] 



case 0: 

SecAPen ( rp^ per. ) ; 
switch ( ITEHI?UM ( code j ) 
i 

case 0: 

KyTexcl 1^1, lOr 20, (fisgl ); 
break; 

case 1 ; 

KyText( rp, 10, 30, insg2 1; 
break; 

case 2 : 

MyTeift ( rp, 10, 40, msg3 (; 
break r 
) 
break; 

case I: /• Erase •/ 

SetAPen { rp, ) ; 
switch (ITEMSJUt^it code )} 

i 

case 0: 

HyTaxtl cp, 10, 20, msgl }; 
break; 

case It 

HyText ( rp, 10, 30, rrLsg2 ); 
break; 

cas« 2: 

MyTexti rp, 10, 40, rnsg3 ); 
break; 



brealc; 

case 2 : 

switch (ITEMNOMt code 1) 
( 

case 0: 

pen - I; 

break; 

case 1: 
pen ■ 2} 
break; 

case 2: 
pen - 3; 

break; 



/• CoiDr •/ 



case 3 : 
break; 



/• this is our ^io nothing' iizage choice ■/ 



break; 

default; 
break; 

1 /• end of switch{MEmJKUMt code )| */ 

code - ItemAddressC cext_menu, code ) ->NextSelecc; 

/• end Of while! code !- KEKUNULL | */ 



IDCHP routine 



VOID handle itiain messages!) 
{ 

struct IntuiKessage "message; 

SHORT mx, my; 

static SHORT mouse moved; 



72 



Amazing Computing V'jj. / ©1990 



jnouse_raoved " FALSE,- 



/* As long as we ifiave rsessa^es 
Appropriate 

dats, reply, and than process accordingly 



the qus, nake Iccal copies of 



*/ 



while ( message" [struct IntuiKessage *)GetMsg( main_wind->U3erPoi:t ) ) 



i 



ULONG Class - message->Class; 

USHORT code = tnessage->Co<ie; 

USHORT qualifier »• nie£sage->Qualif iec; 

APTR address = ness2ge->IA!ldress; 

Struct Window *window_jJtr = F.es&age->IDCKPWiridow; 



Customcr 

Service 

(813)377-1121 



COM JPUTEPS ft 

etc! 



Technical 
Support 

(813) 378-2394 



SAVE ON AMIGA HARDWARE, SOFTWARE, 
AND ACCESSORIES! 



JP.X - me3sage->MouseX; 
func •/ 

my ■ message->MouseY,' 
technique * / 



/* Declared above. Must be local to entice 
/* if we use the mouse move collection 



ReplyKsg ( message ) ,- 

switch ( class ) 

[ 

case KOUSEHOVE: 

iDouse_nioved - TRUE; 
/* updace_coords{ rase, ray ); 

time' updates */ 
break; 



'/ /* <-uneonsnent this for "real 



CO 

O 

UJ 

a. 

CO 

< 

DC 

to 



ASOO 

20 MB Hard Drive 

40 MB Quantum HD 

80 Mii Quantum liD 

2 MB I4AM Card for HD 

(populated) 

512K RAM Expansion 

A2000 

40 MB Quantum HD 

80 MB Quantum HD 

8 MH KAM Card w/2 MB onixjard 

Supra 2400 Baud Modem w/cable 



case MOOSEBDTTOHS: 

handle_ni5in_mousebuccons ( code ); 

breaks- 
case CLOSEWINDOW: 

damp_mop ( > ; 

break; 

case RAWKEY: 

handie_main_rawkey ( code, qualifier 1? 

breaks- 
case KENUPICK: 

handle_main_raenu 1 code ) ; 

break; 

case GADGETDOHU; 

handle_main_gadgetdcwn ( address ); 
break; 

case GADGETUP! 

handle_main_gadgetup { address ); 
break; 

case KEWSIZE: 

h3ndle_nain_ne>rsi2e { window__ptr ) ; 
break; 

/* we could add other choices here as well ■/ 



495.00 
695.00 
950.00 

260.00 

iio.o: 

625.00 
899.00 

325.0!' 
129.0U 



19.9- 



CO 




I 



J /• end of whi le (rcssage. . ) */ 

if { niouse_raoved } update_coords { my., ir.y 1; 

} /* end of handle_r5ain_messages (1 */ 



/• this function new for 2 */ 
VOID hai;dle_rext_S!essages <) 
( 

struct IntuiMessage 'inessage; 

SHORT mx, my; 

static SHORT mouse moved; 



mou3e__Eioved = FALSE; 

/•As long as we have messages in the qte, raake local copies of 
appropriate 

data, reply, and then process accordingly "/ 

whilet nessage- (struct InCuiMessage •)GetMsg( ceMt_wind->U3erPort I } 
I 

ULONG class - nie3sage->Class; 

USHORT code = mes3age->Code; 

USHORT qualifier •= iitessage->(Jualifierf 

APTR address - message->IAddress; 

struct Window *window_ptr - ffiess3ge™>lDCM?Window; 

nx - message->MouaeX? /* Declared above. Must be local CO entire 
func */ 

jny ■ message-^MouseY; /* if we use the mouse move collection 
technique */ 

RepliiMsg( message ); 



Bridgeboard Speaker 

(Ea.sy to Install, adds sound to Briclgeixjard!) 
A500 Replacement Power Supplies 

HDL-150 (150 Watt) 99.00 

HDL-150DL (150 Watt, 3 A/C outlets) 129.00 

Call/or More Information 



I Call for our Free 48 PageCatalog! 

circle 113 on Reader Service curd. 



switch I class ) 
I 

case MOUSEMOVE: 

mouse_moved ^ TRUE; 
break; 

case MOUSEBUTTONS : 
break; 

case CLOSENIHSOM: 

clQse_^text_window O ; 

return; 

break; 

case RMtKEI: 

break; 

case MENHPICK: 

handle_cexc_aenu f code ); 
breaic; 

case GAOGEIDOWN: 
break; 

case GAOGETUP: 
break; 

case NEWSI2E; 
break; 



/" we could add other choices here as wall •/ 



1 



1 /* end of while tinesgage. . ) •/ 

1 /" end of handle_teKt_n!essages (} */ 



/•*a«n 



Dat's all folks-.,. 



•AC* 



Amazing Computing V5. 7 ©1990 



73 



(continued from page 49) 

FuUMetalPlanet a secret space mission 
and you are one of the best pilots in the galaxy. 
Gamers are challenged lo collect as much ore as 
possible, one ofllie planet's most desired natu- 
nii resources. Fighting for tiieir lives, g-ame 
players must capture all tJie ore taken by rival 
companies on tlie planet and return home. 
Available in die Fall. S'i9.95. Inquir>' # 282 
Data East USA, Inc. 
1850 little Orchard Street 
Sanjose,0\ 95125 
(408) 286-7074 
FAX (408) 286-2071 

Electronic Arts 

Tlie creators of Populous now bring 
Powermonger, a game set in the future where 
you are the leader of a tribe who arrives on 
uncharted worlds and has a host of choices (o 
make. Do you negotiate, battle, or join forces 
with the various leaders >ou meet, each witli his 
own traits. S'i9.95. Inquiry # 283 

Electronic Arts & subsidiaries 

CaUfomia Dreams 

Add Street Rod to tlie ever-growing list 
of dri\-ing games for tJie Amiga. Set in the 50's, 
you have the summer to win races and buy 
better hot rods to take on ihe king of the streets 
and win. A data disk with more cars and parts 
will also te available. S39.95. Inquiry # 284 

Fans of Teu'is-style games will enjoy 
playing .SfocJbouf, which is based on the 60's 
children's toy tlie SOMA cube. You rotate differ- 
ent 3-D blocks down a pit for fill an eitlire level. 
Slowly but surely tJie levels rise on your as you 
fail to fill tliem. S39.95. Inquiry * 285 

Tunnels of Armageddon ■.yo\A go racing 
through a network of underground lumiels in 
search of a doomsday device thai threatens all 
mankind. Disarm it and mankind will be granted 
interstellar travel. S39.95. Inquiry # 286 

Wings puts you in the cockpit of a WWI 
fighter as a rookie pilot who just joinecl an elite 
squadron. The game spans W\X'I and includes 
all of tlie fighters of W'^Vl. Over 2.000 missions 
available. August for S-i9.95. Inquiry # 287 

Braiuhlaster . a set of two games in one. 
Xenon 2 and Bomhiizal are bolh fast-paced 
arcade action games. S39.95. Inquiry # 288 

First Byte 

Spell-A-Saurus , is a highly graphic- and 
sound-oriented game tiiat teaches kids to read 
while having a good time at it, It includes four 
word games, AslmDriiv, Ziig Ksccipe!. Ptera- 
Ptutor, -AndSpall-A-Saur. S44.95. Inquiry #289 

Interstcl 

D.ILA.G.O.N, Force lead an elite strike 
force of 14 soldiers on anti-terrori.st attacks 
around the v\'orid. You gel lo blow tip cocaine 
labs and rescue hostages. S49.95. Inquiry* 290 

LucasFilms Games 

You play a wet-behind-the-ears would- 
be pirate who wants to be a dashing buccaneer 
in Tlje Secret of Monkey Island, a comic game 
that doesn't take the subject too seriou.sly, 
complete with 3-D graphics and reggae music. 
Available late this fail for S59.95. Inquiry # 291 

The unofficial sequel to Their Finest 
Hour, Secret Weapons of the Luftwaffe is 



set near the end of the war, when Germany was 
experimenting with jet engine fighters. The 
player can choose from training missions or 
tours of duty (25 in all), and nine different 
Americxm aircraft, fighters and bombers. Due 
out kiter in ilie year, S59.95. Inquiry # 292 

Miles Computing 

Become an underwater Rambo witli 
Aquanaut .Your mission is to stop an underwa- 
ter alien attack force and free a captive city. 
S39.95. Inquiry* 293 

New World Computing 

For tliose who don't take nuclear destruc- 
tion seriously, Nuclear War is for you. This 
comical action/strategy game is based on the 
popular card game has the serious aspect of 
fending off nuclear attack mixed with oddities 
like Cattletech and l6-Ton Weights. S'19.95 
Inquiry # 294 

Might and Magic H now it comes to the 
Amiga, complete with 3-D graphics, automap- 
ping and a ievel of play like you've never seen. 
S59.9S Inquiry #295 

Ocean 

F29 Retaliator gives you the chance to 
fly the hot rod fighter with the forward-swept 
wings. The 99 different scenes allow dogfights, 
ground strikes, attacking sea -going targets, and 
more. Due in August. S49.95. Inquiry* 296 

Horror fans are in for a treat, Clive 
Barker's Nigbtbreed . You play Boone, tlie hero 
of the story, running fromaccusations of murder 
and into a city of shapeshifters. August. S49.95 
Inquiry # 297 

BiUy The Kid: one or two players can 
enjoy this wild 'SN'est game and assume the role 
of Billy or tlie sheriff, Pat Garrett. Historically 
accurate witli over a half hour of MIDI music. 
Due later this year. S49.95. Inquiry # 298 

If you liked Carrier Command, then you 
should be al! ready for Battle Command. 
Created by CC's designers, the game is a futur- 
istic armored tank battle simulator. 
August. S49.95. Inquiry # 299 

Ttie Untouchables puts you in Eliot 
Ness' shoes to take on the Mob, reli\'ing all of the 
legendary battles Ness and his men had with 
Capone's hoods. July.S39.95. Inquiry* 300 

Lost Patrol j^laces you as the com- 
mander of a crew of helicopter pilots who are 
shot down over tile Killing Fields and uy to get 
out alive. -August, S49.95. Inquiry* 301 

SSI 

The DragonLance series comes to the 
Amiga one again, this Lime in tlie form of 
DragonStrike . You play a Solamnic fCnight of 
Kr)'nn witli a dragon steed. You fly with other 
good dragons into combat against other drag- 
ons, wyvems, ships, archers, and flying citadels. 
Due this fall S49.95 Inquiry * 302 

UBISoft 

In the game Unreal, a bizarre twist 
occurs when the hero of the stor^' befriends a 
dragon to save a helpless maiden. Due in August 
for 549,95 Inquiry # 303 

In&AZ , you play a special agent look- 
ing for corporate leaders %vho have been ban- 
ished from Eartfi and now want to destroy it with 
bacterial weapons.Due in early summer. 549-95. 
Inquiry # 304 



Electronics Arts 
1820 Gateway Dr. 
San Mateo, CA 94404 
(800) 245-4525 
(415)571-7171 
FAX (415) 571-7995 

InnerPrise Software, Inc. 

World Of Turrican , will feature 13 lev- 
els with 1,300 screens, hidden rooms, multi-di- 
rectional paralUix scrolling, ancl thirty different 
sound effects. S39.95 Inquiry #305 

TJie Plague, you cha.se after a lab e.Kperi- 
ment gone hog wild. With fony-two colors and 
large-sized sprites, e.xpect a screen full of colors 
and sighLs. S39.95 Inquiry # 306 

Globulous mixes arcade action with 
adventure-.style puzzles. 25 different screens 
and a 3-D isoinetric background, and there is a 
unique "flip screen" feature ihal inverts the 
screen during play. S29.95 Inquiry * 307 
InnerPrise Software, Inc. 
128 CockeysvUle Road 
Hunt Valley, Md 21030 
(301) 785-2266 

Mindscape, Inc.* A Software Toolworks 
Company. 

toopz™ is very simple in it's concept and 
very addictive in it's play. The cliallenge is to 
take pieces of different si2es and shapes pre- 
sented randomly and put tliem together to form 
loops. You can move ttie pieces and rotate 
tliem, If you complete a loop, it disap[3ears and 
you .score points. The more complex tjie IcKip, 
the more points. S49.95. Inquiry # 308 

Days Of Thunder, features the chal- 
lenge of eight different races on seven different 
race tracks. Players will be able to chtxise a car, 
then customize it for maximum .speed and 
handling on tlie course. A variety of perspec- 
tives, including first-per.son from Isehind llie 
wheel, dynamic 3-D driving action and digitized 
sound give Days Of Thunder an intense realism 
in a race against the clock. Available by Sum- 
mer's end. price unavailable. Inquiry # 309 
Mindscsape Inc. 
3444 Dundee Road 
Nortlibrook, IL 60062 
(708) 480-7667 

Spectrum HoIoByte 

Alexey Pajiinov, the Russian author of 
Tetris, comes back witli a follow-up to his higiily 
successful (and addictive) game, called 
WelUris. The game is similar to Tetris, e.^cept 
that tlie blocks now drop straight down, milking 
tlie game 3-D. S34.95. Inquiry * 310 

.Alexey has another game out called 
Faces (TrisIIt) . Pieces of a person's face take 
tile place of blocks. Your goal is to make ilie face 
property as pieces drop. Familiar faces like 
Gorbachev and Margaret Tliatcher come piece 
by piece. Facial parts are interchangable. Due 
Soon. S39.95. Inquiry #311 

Flight of the Intruder, is now out as a 
mo\'ie andagame. You fly eitlieranA-6 Intruder 
or F-4 Phantom over %'ietnam in raids on SAA-I 
sights, ammo dumps and more. Available late 
this year for S59.95. Inquiry * 312 
Spectrum HoloByte 
2061 Challenger Drive 
Alameda, CA 94501 
(415) 522-0107 

(continued on page 95) 



74 Amazing Computing V5.7 ©1990 



rjl^e 





by Rich Falconburg 




I OT LONG AFTER I PURCHASED MY FIRST Amiga 
I liegan experimenting witli serial port communi- 
cation. Having spent several years working with 
multiuser systems tliat use simple alphanumeric 
terminals as the common I/O device, ! was natu- 
rally very interested in seeing how the Amiga 
would perform with a similar configuration. I 
knew it was capable. I spent some time learning 
the intricacies of the CLI and discovered that it was 
possible, in theory at least, to use redirection to 
create a CU connection \-ia die SER: device. As 
many of you may know, this was an exercise in 
futility, a process I've become something of an 
expert on. You see, the serial port very generously 
provides you witli a buffer whose size may be 
changed via the Preferences utility'. This helps 
compensate for the slow output devices that are 
generally connected to a serial port, For output, 
this is beneficial in tliat it frees up the command 
line, if you did not run the program in the 
background, and returns tlie system prompt to you 
more quickly. This buffer also works the other 
way. If you send data to the compu ter \-ia die serial 
port it T^'ill store the information in die buffer until 
the number of bytes reaches the amount specified 
by Preferences. The buffer is dien sent on to the 
process expecting die input, emptying the buffer. 
For proper operation widi a terminal, the buffer 
size would need to be zero, or no buffer at all. 
However, zero b>tes is NOT an option for the 
serial port. I was able to make it work — ^marginally . 



Pressing the RETURN key 500 times is not 
exactly productive. Undaunted, I continued to 
peaise tlie available literature, determined to 
find a way around this limitation even if it meant 
that I might have to write a special program to 
achieve my goal. Much to my chagrin I discov- 
ered this "feature" was buUt into die serial 
device, meaning that even programming my 
way around it would be no cake walk. The ROM 
Kenie! Manual siixes that the minimum buffer 
length for the serial port connection is 5 1 2 b wes, 
period. How nidd\ Having only just begun 
working with the C programming language, I 
was not yet ready to tackle the chore of writing 
a de\'ice handler. As a result, my project was 
tabled for several mondis and I went on to odier 
things. 

Tiien several months later while scanning 
die latest list of new programs on my local BBS 
I came across something diat caught my eye. An 
AUX: handler for using character-oriented de- 
vices through die serial port. Eureka- 1 immedi- 
ately downloaded it and dusted off my terminal 
and began testing it. It may come as a surprise 
to some of you, but die AUX: device handler as 
provided by Commodore is relatively new. They 
didn't invent tlie idea, or at least they were not 
the first to provide it. Steve Drew distributed his 
AUX; handler long before Workbench 1,3 hit die 
streets. He has recently upgraded it and in- 
cluded .some veiy nice additions to the package. 



Amazing Computing V5. 7 ©1990 



75 



For tliose of you who decided to abandon Steve's version in favor 
of the one shipped by Commodore, I would say, "Take another 
look." Among other tilings, his handier has always been more 
cooperative in allowing you to close the AUX:CLI from another CLI. 
This version now includes an AmigaShell-compatible startup 
script and several support programs. These include: 

reqoff ; A utility for preventing requestors from popping up from 
things such as specifying an unmounted volume, effectively 
locking you out of the system. No problem if you are using it locally 
but a real pain if you are using a modem. This utility is unique 
compared to other similar programs in diat it only cancels re- 
questors caused by the process from which it is e.xecuted. 

password: A password-locking facility that will prevent unauthor- 
ized access to your Amiga. It allows you to specify' tlie valid 
password required as a parameter. It does not prompt or echo to 
the terminal. 

emacs : Tliis is version 3.9 of die very capable MicroEMACS editor. 
Steve has made the necessary changes required to make it work 
through the AUX:pon witli any ANSI standard (VTl 00-compatible) 
terminal. Only the executable and an .emacsrc file are supplied. 

az: Tliis program takes advantage of the XPRZmodem. library to 
provide a means of downloading ■?\'hile using the AUX: port. The 
library file is uol included. 

Version 1.1 of Steve's AUX handler pro\'ides tlie following 
additional features: 

Control R key support: This will re-display the cun-eni line as it 
is entered into the computer. Handy if you have a terminal that 
insists on being dysle.Kic about the Backspace and Delete keys or 
other keys that may inadvertently cause tlie command line to loose 
its place. 

Improved type-ahead: Lines entered while information is being 
displayed to die screen will not interrupt the output as is the norm 

for a CLI. VMS users will find bodi this and the CTRL-R key very 
comfortable. Also, a tone will sound to alert you that the type-ahead 
buffer is fu 11. Xon and Xoff (Control S and Control Q) are su pponed , 
making remote use very natural and eliminadng some of the 
hazards of the usual method for pausing display output as provided 
by die console interface. 

The handler will also prevent you from invoking multiple 
AUX: sessions and will allow you to kill off the AUX CU widi a 
simple 

1> ECHO >AUX;ENDCLI 

If amthing other than the password program described 
above is njnning on die AUX: port, die CLI will not be killed. You 
may send a line of text to the AUX: session including die output of 
other commands (handy for sending system messages to a user), 
but it seems diat the only command interpreted by die shell via die 
AUX handler is the one shown above. 

Installing this handler is relatively painless. A new iVloundist 
entry is provided and instructions for using the new handler are 
easv to follow. A command script is included which creates several 
aliases and protects die shell widi the password program. It is a 
simple marter to create your own procedure to call a different shell, 
rll give some examples later. I've been using this handler for some 



time now and find it to be very reliable. It works -well T\ith programs 
that u se the standard CON : device for input and output. I especially 
appreciate the inclusion of the modified EiVLACS editor which now 
makes the AUX: port extremely usefud. A word of caution: not all 
shells are created equally and some may not work property through 
the AUX: port. Occasionally I've had lockups and GURUs occur 
which seem to have been related to the sheli/AUX combination. 

One problem I encountered with the Commodore AUX: 
handler is its handling of line terminators. I guess Commodore 
didn't think diat anyone would w'ant to use character-oriented pro- 
grams diat assume standard ANSI control codes, such as Carriage 
Return/Line Feed, which would be used to terminate a line. (Steve's 
handler makes no such assumption.) As a result, die output of some 
commands and programs will not format properly with the 
Commodore AUX: handler. Most notable of these is the SKsh shell 
discussed last issue. Line Feeds are received but, widiout the 
carriage return, every line crowds the last charactei' position on the 
display. On die odier hand, SKsh is a natural combinaUon with 
Steve Drew's AUK: handler. The two programs complement each 
odier ver)' nicely. Let's examine this a little closer. 

First I should mention that Version 1 .4 of the SKsh shell is now 
available and includes some important clianges. Here's a quick 
summary': 

Added: 

case/esac statement: A multiple test construct. 
compUst command: An enhancement to the file name comple- 
tion mechanism. 
Resident support: Uses die ARP resident standard. 
ATlnySKsh: A shell without editing, a history buffer, and se^'eral 

of die built-in commands. 
SIZE: A \'ariable for differentiating between a Tiny or normal shell. 
LJLMIN: A variable that .sets minimum length of lines to be added 

to the historj' buffer. 
MAXDIST: Used to set the maximum distance to search down in 

the history buffer for a line identical to the one being entered. 

If one is found, the duplicate line will not be added to the history 

buffer. 
ROOT: A feo' helpful variable that allows you to specify the Root 

volume which will then be referenced by the single slash ("/") 

(Unix stj'le root). 
LASTRC: A variable diat will contain the return code from die last 

external command. , 

New external commands: 

grep and fgrep; Text-searching commands with options. 

vie"W: .■\n extended "file" command. 

tee: A very useful piping command that allows for tapping die data 
stream between two piped commands. 

du; Command diat will display your disk usage — that is, how many 
b%tes are being used and where. 

crc: Command diat will calculate codes based on the file data which 
can be checked after transfer. Handy for noisy communicadon 
links, 

snin: Another "run in the background" command wid) a twist: it 
accepts an input file, an output file, stack and priority argu- 
ments, and parameters to be passed to the program being run. 

CHANGES 

The cp command is now an external command and has some 

added capabilities. 

(continued on page 78) 



76 Amazing Computing VS.7 ©1990 






by Stephen Kemp 



Doulily linked 
lists revisited. 



THOSE OF YOU WHO MISSED LAST MONTH'S COLUMN 
may not be up to speed on the current subject that I am discuss- 
ing — doubly lin]<ed lists and queuing. To refresh, a linked list is 
a metiiod of storing informaiion (data) in such a way tliat one data 
item "points" to the item that logically follows it. A doubly linked 
list follows the same principle, but has the 
added capability of "pointing" to items 
that occur prior to the current member. 
This means that you can traverse a list 
foPA'ards and backwards. 
In the last issue I included code that defined a method of 
queuing and tlie associated stnictures required. In the interest of 
those ■who did not see those staictures, here they are again: 

typecef struct y. { 

struct X 'prev; 

struct X *next,- 

unsigned short len; 
1 QITEK; 

typedef struct { 

QITEM "bot; 

QITEM -top; 

unsigr-ed long cnt; 

The key things to know about a queue are where the first 
and last elements of tlie I ist are located, and how to reach members 
that occur before and after any particular element. The easiest way 
to handle these tasks is tlirough structures like those that I have 
defined. 

The first structure type is named QITEM. Given any mem- 
ber, you have to be able to find the previous member (prev) as 
well as the member that occurs next. Since the next and previous 
pointers point to members of the queue, the structure defines 
diese pointers as tlie same type of structure diat we are defining. 
An additional item is included in tiiis strucmre to enable the 
members to handle variable length items. The "len" represents the 
amount of memory required by the data but does not include the 
overhead of the QITEM structure. As evident, if each member 
maintains its QITEM structure it is possible to reach the items that 
precede and/or follow it by referencing the structure's next or 
previous pointers. 

QMAIN is a header structure for the queue of items. This 
structure contains a pointer to the first (top) QITEM and a pointer 
to the last (bot) QITEM. Additionally, tlte queue header contains 
a counter(cnt) of the number of items contained in the lisL Notice 



that the order of the structure's "top" and "bot" is important. By 
aligning "bot" in the same position as "prev" in the QITEM 
structure and "top" witli the "next" position, it is possible to make 
a complete "circle" through the items. 

With tlie structures that we have defined, it is now possible 
to write code to handle doubly linked lists. Las: month we 
covered the basic queuing fi.mctions that initialize and free a 
queue, add items to and remove items from a queue, and some 
imponani positioning functions. This montli, I want to introduce 
a new fimction. 

The function is named "qcut". This function will "move" 
everydiing in a queue — beginning at a designated element — into 
another queue. The code for the fLinction follows: 



/* QCUT is used to move the elements from one queue to another 

*/ 

/* beginning at the QITEM pointer that was nasseci- */ 

/* The new queue is assumed to be empty. */ 

/* -/ 

void qcut(C»lAIM "src, QITEM 'member, QMAIN "destl 
{ 



QITEM *ptr,- 
unsigned long cnt; 



/* first count the members 



for(ptr " member; per ! ■= (QITEM "Isrc; ptr = ptr->next, 
ont++); 



if lent 



OH 



qinit Idest) ; 
properly*/ 
)else( 

dest->top •• member; 
one "/ 

dest->bot ■■ src->bot; 
one "/ 

dest->cnt = cnt; 



3rc->bot = niember->prev; 



/■ if no members included 
/* just init the dest 

/* first element is this 
/* last element is this 
/* this is the count */ 

/* adjust bottom of orig 



ciueue'/ 



src->bot->ne:-:t •= (QITEM ")src; /- now point to .T.ain 



src->cnt -= cnt; 



•/ 



/' adjust orig queue count 
/" this guy now point 



member->prev = (QITEM "Idest; 
to dest"/ 

dest->boc->next = (QITEM "Idest; /* the last one too */ 



} 



) 



Amazing Computing V5. 7 ©1990 77 



As I have mentioned before, one of the advantages of tliese 
types of queues is that you don't have to accualiy move data around 
once it is stored. The actual "sequence" of data is maintained by the 
pointers in die queue, and where the data actually resides is 
secondary'. To those who missed last montli's column, die 
elements are stored in memory with a QITENS stnjcture first, and the 
data follows. As already stated, once die data is stored, the pointers 
maintained in the QITEM structure determine the actual queue 
sequence. 

The first thing the function does is determine how many 
elements are going to be involved. Since the QNLAIN structure 
maintains a count of elements found in the queue, it is necessary 
to know how many are being remo\'ed from the source queue and, 
likewise, ho'n' many end up in die destination queue. All you have 
to do to count die pointers is "next" tlirough the pointers until you 
are pointing at tlie source qtieue's header. Since you are comparing 
a QITEM pointer, you have to cast tlie queue's structure as diough 
it were one too. 

If you determine diat no elements are going to be moved, all 
that is required is to initialize the desUnation queue. This is 
important since the function that calls qcut will probably expect 
diat die destination queue is now properly established. Remember, 
initializing a queue simply involves pointing the top and bot 
pointers in the QMAIN stniccure to the QMAIN (it points to itselO. 
Naairally, the count is also set to zero. 

Should the ftinction decide that elements will be "moved", 
then a different path is followed. First, the QMAIN structure for the 
destination queue has to be established. The top pointer wU! be set 



to the member diat was passed as a parameter. The bot pointer can 
be taken from the source queue since it has already been 
established there. And the count is assigned the number of 
elements that were involved. 

Now it is dme to adjust die source queue so that its integrity 
is maintained. The last element of the source queue will be the 
element that occurred prior to the member passed. After establish- 
ing the new bottom of tlie source queue, you can use that pointer 
to make die last element (which still points to the member being 
removed) point to the header of the source queiie. Once the count 
of the source queue has been adjusted, die integrity of die source 
queue has been reestablished. 

In a similar manner, you have to complete the integrity' of die 
destination queue. Although the QiVL'MN structure has been com- 
pleted, you still have to adjust die member passed so that its 
previous pointer references the QMAIN of the destination queue. 
Likewise, you also have to make sure tlie last element's next (which 
still points to the source queue's QMAIN) now references the 
destination queue's QMAIN. 

After all these things have been completed, and executed, 
you will have two independent queues that were once one. No data 
has actually been moved, which means tliat tliis type of operation 
will almost be instantaneous. 

Get die code from last month's column and put this function 
into operation. If you don't ha\'e die issue, order it elsewhere in diis 
issue and give queuing a uy. It probably won't take you long to 
think up a number of uses for queuing. 

•AC- 



(Command Line , coiitinuedfrom page 76) 

The backslash is now used to o^'erride the special characters, 
allowing them to be used in text strings. This is more compatible 
witli the Unix method than the double quoting required by SKSH 
1.3. 

The filename completion mechanism now handles wild card 
characters properly. 

The variable substitution mechanism has been improved and 
several odier bugs have been fixed including a frustrating one in the 
date command. Also, the code size has been reduced, as have the 
stack requirements. 

CUSTOMIZING AUX 

The easiest way to use the SKsh shell in place of the 
AmigaShell is to create a file diat includes the following: 

STACK 10000 
SKSH 

This is the minimum you'll need. Add what other embellish- 
ments you wish to execute. Just be sure to place them before the 
SKSH command as diis command takes over the CLI. Now 
substitute the follo'n'ing for the NewShell command in the aux- 
startup script included with the Drew AUX; handler 

NEWCLI From SKsh_AUX-startup 

where SKsli_AL'X-startup is die name of the file created 
above. I would recommend creating SKsh scripts and using them 



rather than executing commands from eidier of the above files for 
setting up your environment. The reason should be obvious. SKsh 
provides a far more robust command set for scripts than does the 
AmigaShell, One very nice feature about this shell that I neglected 
to mention is that the command line editing is a subset of die EMACS 
control keys. Even if you have a terminal that does not support ANSI 
sequences you will still be able to use the line-editing features widi 
CONTROL key combinations. Using it widi a number of the 
supponed keys will provide you widi complete line editing 
capabilities, even on a "dumb" terminal. 

There is a wonderful world to explore in remote communi- 
cations vnxh die Amiga. With the advent of multi-port serial boards 
it is now possible to create a full-fledged multiuser system. There 
are a few important additions that need to be made to die Amiga's 
command environment to fully support this kind of operation, such 
as special use of permission bits to control access, resource tracking 
facilities, user mail, and more. Most of the sofri\'are you need can 
be foimd on your nearest Bulletin Board System. 

Next time I will begin a look at ways to connect Amigas 
together to form a powerful operating environment diat allows 
sharing resources betu'een machines in v.'ays that would make 
otvners of diose other computers turn green. 

•AC' 

Send questions or com menis to Rich Falconhurg, c/o A maz- 
ing Computing, P.O. Box 869, Fall River, MA 02722-0869. or send 
Email to R.Falco7iburg on CEnie. 



78 Amazing Computing V5. 7 ©1990 



(Trees, continued from page 60) 

The code inside the inner 'if statement creates a first-in, first- 
out list (alias a queue). The queue node is allocated and its node 
list pointer is set to point to the child list of the node being visited. 
Its 'next' pointer is set to NULL, allowing the end of the queue to 
be detected. If the new queue node is not the first one allocated on 
the level being visited, it is linked in as the 'next' queue node in the 
linked list. Otherwise, it is assigned as the top QNode pointer and 
becomes the first node in the queue. The new queue node pointer 
is then saved as the previous queue pointer, so the queue nodes 
can be linked togetlier. What is actually being built is a list of lists. 
The queue nodes are the list header nodes, and die linked lists of 
sibling nodes are the pointed-to lists. The queue nodes are linked 
together to build tlie entire search queue for the next level. 

The nodes are actually visited in the innermost 'while' loop 
by simply following the 'next' pointers in the list of sibling nodes. 
When the end of a sibling list is reached, the innermost ' whUe' loop 
ends. The outermost 'while' loop iterates on the linked list of queue 
nodes which was sent in to die procedure. The list of nodes 
attached to each queue node is searched. After die list is searched, 
the next queue node in the list is accessed, and the queue node that 
was just used is freed, since it is no longer needed. 

This nested iteration, queue node allocation and freeing 
continues untH the end of the queue is reached. At that time, if a 
new queue has been constructed, the procedure is recursively 
called to traverse the nodes for the next level. Otherwise, the 
procedure returns from tlie recursion. The traversal is started by 
forming a queue consisting of only the root node and calling the 
traversal procedure with die queue pointer as tlie input argument. 

As you can see, breadth-first traversal requires a lot of internal 
gyrations and housekeeping. So why use it? Actually, I hardly ever 
use it, but I'll return to tliis question after describing how the search 
is done. 

mEESEAJRCH 

Trees are used to store data. Found data has to be stored 
sooner or later. Trees are also used to model many kinds of 
problems. 'Search' is a general term which describes different 
methods of finding a paiiictilar piece of data, finding a patli from 
one place to anodier, or finding a soludon to a problem represented 
as a data structure. Wliile there are many different techniques for 
searching a tree, most of the tecliniques are modified or enhanced 
versions of deptlt-first traversal or breadth-first traversal. These 
techniques can be grouped into tfiree categories. The first category 
is searching just to find any satisfactory path. Depth-first search and 
breadth-first search belong in this category. A second type is 
searching to find a 'best' padi which meets some condition of 
optimality, sucli as finding the shortest path from one node to 
another. A third type of search is game tree. A game tree search is 
a specialized type of tree used to (what else 1!) represent games. 

Bodi depth-first search and breadth-first search are modifica- 
tions of the traversal techniques discussed above. If you know how 
to traverse a tree, you already know how to search the tree. The 
difference between traversal and search is that in search, instead of 
just visiting a node, tlie node is examined to see if it or its data 
matches some search criteria. If a match is found, the search ends 
and a pointer to die found node is returned. If the entire tree is 
traversed and no node is found, a NULL pointer is rettimed to 
indicate that tiie search had failed. 

Deptli-first sea rch is one of die simplest search techniques for 
trees. In pseudo-code, a recursive algorithm for depth -first search 
of a natural binary tree implemented as a list of lists is: 



Come see whats Hot 

for the AMIGA at 

The Memory Loc ation 






The 

Memory 

Location 



396 Wiishliigtoii StiL-t:t 
Wcllcslcy, MA021RI 

(617)237-6846 

AMIGA Experts! Nolhing but the best. 

Satisfaction guaranteed. 

Come in and try-out all the latest software, 

hardware, and accessories. 

Your full service AMIGA dealer. 

Store hours; Moii.-Tfmr. 10-6 Friday 10-8 Saturday 9-5. 

Full Commodore authorized repair service onsite. 

Low flat rate plus parts. 



circle 107 on Reader Service card. 



procedure dfScacchf node ) 
while notie is not NULL 

if node is GOAL, return noiie 

else 

if node->child is not NULL 

return df Search { node->child ) 
else 

set node to node->nexc 
end while 
end dfSedrch 

This algoritlim is implemented in C as the procedure 'dfSearchO' in 
the demonstration program. 

Just like breaddi-first traversal, breadth-first search is 
simple to understand, but it is difficult to implement because the 
nodes on a level may not all be in the same sibling list. The 
pseudo-code algorithm for a recursive breadth-first natural 

binary tree search is: procedure bfSearchC queue ) 

while queue is not e.tipcy 

get the first node list fro-Ti the queue 
while node list is not empty 

if node is GOAL, return node 

else 

if node'>child is not miLL, 



Amazing Computing V5. 7 ©1990 



79 



Developers! 

The hypeRexx ToolKit 

... is now available/ 

* Reduce Your Programming Time Up To 90% 

* Compact Final Program Size 

* Automatically Have: 

-ARexx Support 

-Dynamically Configurable Gadgets 
-All Standard Requesters 
-ANIM Support, Including Hard Drive 
Assembly and Playback 
-Appealing 3D Look 



SAVE MONTHS OF WORK, with only a 
minimal investment 



Brought to you by: 

THUT Inc. / Mindware International 



For a Free Demo and Information Kit, call or 
write: 



Mindware International 

no DunlopW Box 22158 

Barrie, Ont. Canada L4M 5R3 

(705) 737 5998 

circle 120 on Reader Service card. 



List Of Advertisers 

Need more Information? 
Need help? 

Need to know? 

Contact the AC advertisers! 

Please use the Reader Service Card to contact 
those advertisers who have sparked your iriter- 
est. Advertisers want to hear from you. This is the 
best way they have of determining the Amiga 
community's interests and needs. Take a mo- 
ment and contact the companies with products 
you wantto know more about. And , if you wish to 
contact an advertiser directly, please tell them 
you saw their advertisement in 

Amazing Computing 
For The Commodore Amiga 



Advertiser 


Page 


Reader Service 

Number 


ACDA Corporation 


38 


104 


AmlEXPO 


81 


119 


Aurum Software 


30 


106 


Beta Unlimited 


44 


126 


Computability 


13 


117 


Computers Etc. 


73 


113 


Delta Graphics 


42 


118 


DeskTop Advantage, The 


85 


110 


Grapevine Group Inc., The 


8 


147 


Grass Roots 






Video Productions 


63 


108 


Great Valley Products 


7 


123 


Hologromaphone Research 


46 


109 


Hunter Group, The 


Clll 


111 


Impulse, Inc. 


5 


115 


Imtronlcs 


CIV 


151 


Imtronlcs 


25 


124 


InterComputing, inc. 


11 


114 


Krueger Company, The 


28 


116 


Memory Location, The 


79 


107 


Memory Location, The 


44 


186 


Michaelangelo Productions 


83 


128 


Mindware international 


80 


120 


MJ Systems 


68 


149 


Montgomery Grant 


36 


121 


Natural Graphics 


53 


122 


One Byte 


87 


135 


Ontological Survey 


29 


127 


Poor Person Software 


17 


126 


Puzzle Factory, The 


3 


168 


S.P.O.C. 


44 


112 


Safe Harbour Software 


60 


134 


Saxmon Systems 


69 


103 


Silver Fox Software 


71 


105 



80 Amazing Computing V5. / ©2990 



PERSONAL COMPUTER SHOW 

October 5-7 at The Disneyland Hotel 
Anaheim, California 






Sponsored by 



Admission includes the Exhibition^ Seminars, Keynotes & 

Amiga Artists Theatre! 

120 Amiga Exhibitors Featuring State of the Art 

Software and Hardware, at the lowest prices! 

Master Classes Available in Amiga Graphics, Video, MiiItiMedia, Animation, Rendering and Publishing! 

Seating for Master Classes is limited; call for schedule and availability before registering. 

PRE-REGISTRATION DEADLINE IS SEPTEMBER 21, 1990 

(No cancellations or refunds after deadline) 

For Hotel Reservations Call the Disneyland Hotel at (714) 778-6600 

Hotel reservations deadline: September 19, 1990 

-^^<^ or discounted airfares, call American Airlines at (800) 433-1790 and give them this I Di,J^ZJMM^.~ i 



RL'<;isU'r hy Mail iisiiiii llic coupon below or Call H0()-32-AM!ii.\ Saiionwide {or ')l4-74l-6:><)ih 



I'or Your Ticket to The Amiga Event! 



Yes, I want to come to AmiEXPO -Calif onua 

Friday Saturday Sunday 

One day - $15 

Two days - $20 

Three days - $25 



Registration is 
$5 Additional 
At The Door 



Master Class(es) - List Class and Time - $60 Each 



L 



NFAW 



Total Amount Enclosed 



NAME 

COMPANY 
ADDRESS 

CITY 



STATE 



ZIP 



For MasierCard or 

Expiration Date 

Account Number 



VISA Pavmeni 



Name as it appears on card: 

Simiauire 



Make Check or Money Order Payable to: 

AmiEXPO 465 Columbus Ave., Ste. 285 

Valhalla, NY 10595 



Orel* 119 on Raedsr Service card. 



add node's child list Co Che nexc-levai queue 
set node to nQde->next 
end while 
sec <?ueue to queue ->next 
end while 

return hf Search ( next-ievel queue ) 
end bfSearch 

In die demonstration program, the procedures bfBearchO, 
allocQueueO, and freeQueueO implement the breadth-first search 
algoritiim. 

Breadth-first search requires a lot more housekeeping than 
depdi-firsl search, and on the surface, it would seem to be less 
efficient than depth-first search. This is not necessarily truel The 
really imponant measure of the efficiency of a search is how fast 
can a node be found. This efficiency depends more on how many 
nodes have to be searched than anything else. The shape of the 
tree being searched and the location of the node in the tree has a 
much greater effect than anything else on how efficient one search 
technique is Q^'erthe otlier. If the tree being searched does not have 
very many levels, but it has many nodes on each level, a depdi-first 
search may be more efficient titan a breadth-first search. Likewise, 
if the tree has many levels but not many modes on each level- 
breadth-first search may be efficient. For the tree in the demo 
program, the locaUon of the node being sought has the largest effect 
on the search. What this boils down to is that no single search 
technique is best for all problems. A technique which works great 
for one set of dara may not be as good for another set of data! 

The demo program will allow you to watch how both types 
of search move from node to node, generating a trace of the 
searches. It's interesting to use both techniques to search for the 
same node and compare the number of nodes each technique 
examined before fmding the node being sought. You will be able 
to cleariy see the effect on the search of the node's position in the 
tree. Listing 1 is an example of the trace output from the demo 
program. As you can see from the listing, depth-first search 
examined sb: nodes before finding the goal node, and breadtli-first 
search only examined four nodes before finding the same goal 
node. 

Neither of these search techniques has any 'smarts'. Both just 
Stan at any node and search everj' node which can be reached from 
tliai .start node. As mentioned above, many modifications have 
been made to both breadth-first and depth-first search to make 
them better. Most of drese modifications involve either modifying 
the search order by trying to decide which node is the 'best' node 
to search next, orby 'pruning' the tree to eliminate nodes from even 
being searched. In applications where the data can be ordered in 
some way (such as alphabetically), the tree is built firom the start to 
allow efficient search. If you are interested in learning more about 
other tj'pes of search or search optimization, the references at ±ie 
end of the article will get you started in your 'search' for informa- 
tion. 

THE SEARCH DEMONSTRATION PROGRAM 

The demonstration program in listing 2 shows how depth- 
first search and breadth-first search are implemented in C, and it 
demonstrates how the searches work. The program is interactive 
and lets you pick a search technique and a node to search for. You 
then step through die search by clicking die left mouse button. The 



program also uses some 'advanced' techniques. Even function 
pointers and pointers to pointers are used! The program is compiled 
and linked widi the Lattice command 'Ic -L searchTree.c', and is run 
from the CLI. 

This is a long program to type in, but if you are interested in 
using recursion or recursive data structures in your programs, it 
includes most of the basic C techniques you need to loiow how to 
get started. If you are just beginning to use the Amiga's graphics and 
Intuition procedures, the program will give you a good idea of how 
to caU some of the graphics, text, menu routines, and how to 
process Intuition input events. Many of die procedures can be 
easily modified and used in odier programs, especially die Intui- 
tion-related procedures. 

The program consuucts the binary tree shown in figure 2 and 
displays die tree in a window in die workbench screen. A small 
menu consisting of 'PROJECT - QUIT', 'PERFOEM - DFSearch' and 
'PERFORM - BFSearch' is attached to die window. The program can 
be stopped by picking the window close gadget or by picking the 
'PROJECT - QUrr menu command. A message is displayed in die 
lower left comer of die window which tells how to search for a 
node, or tells which node was found after the search was 
completed. Either breadth-first search or depdi-first search can be 
performed by first selecting the type of search from die 'PERFORM' 
menu, dien clicking die select button over a search node. Both 
types of searches look for a node at die coordinates where the 
mouse cursor was located when the select button was pressed and 
released. When the search begins, die search coordinates are 
displayed in die message area. If a node is found, die le\-el number 
and sequence number (for example, 3.7) of die found node is dis- 
played. When die search ends, the program will let you search for 
another node using die same type of search, or you can pick 
anodier search type and another node to search for. 

The program writes a trace of tlie recursive calls which each 
search procedure makes as it traverses die tree. The trace output is 
written to a file named 'searchTree dta' in the current directory. If 
you are having trouble understanding how die searches work, or 
are confijsed by recursion, comparing the trace output widi die tree 
diagram should help. 

Tlie main pan of die demo program was described in my last 
article, but some new procedures have been added. All of the 
procedures contain a lot of comments, so you should be able to 
figure out how the procedures work. Tlie following paragraphs 
describe the program logic. 

The procedure mainO implements die top-level program 
flow and calls AskFontO to get information about die window 's font 
height. It builds the tree by initializing a static root node, then 
calling allocNodeO and placeNodeO to recurstveh- generate all of 
die tree nodes, locating them at die correa positions. A window is 
allocated, initMenuO is called to create die menu, and die tree is 
recursively displayed widi a call to display TreeO. Finally, proce- 
dure handlelnputO is called to process input events. When 
handlelnputO returns control to mainO. cleanUpO is called to close 
die window, free all structures, and close all files. The font height 
is used to size die menu items and to position die message text. 
The procedures which take care of the menus are initMenuQ, 
allocMenuO, allocMenuItemO, allocITextO, andfreeMenuQ. Intui- 
tion's menus are lists of lists, and initMenuO dynamically allocates 
die stmctures, inidalizes diem, and links them togedier. Tlie top- 
level menus are allocated and initialized in allocMenuO and die 
menu items are allocated and initialized in allocMenuItemO. Since 



82 



Amazing Computing V5. 7 ©1990 



menu items use Inaiitext stiucaires, allocITextO is called co allocate 
and initialize the menu item text structures. \Xlien the program 
ends, freeiVIenuO is called from cleanUpO to recursively free all of 
the menu stiiictures using deptli-first ti-aversal. Incidentally, 
freeMenuO can be modified to free any dynamically-allocated 
menu strip by adding an inner 'while loop' to take care of freeing 
any menu subitem lists. 

The depth-furst search is done by two procedures: 
doDFSearchO and dfSearchO- DoDFSearchO is called (using a 
llinction pointer) irom handlelnputO and is sent die coordinates of 
the location wliere the mouse 'select' button was released. 
DoDFSearchO modifies Intuition's communications port to stop all 
event messages from arriving except for mouse button messages. 
It then displays an information message in the search window and 
calls dfSearchO to perform die actual search. After dfSearchO 
reairns, a message with the search result is written in die tree 
window, and waitForButtonO is called. WaitForButtonO just waits 
until a mouse button is pressed and released, then returns. 
DoDFSearchO then restores the IDGMP and returns to handleln- 
putO. 

Breadth-first search is done by doBFSearchO and biSearchO- 
DoBFSearchO is almost identical to doDFSearchO, except that a 
queue made of one queue node is allocated and sent to bfSearchO- 
The queue node points to the single root node of the tree. 

The search procedures, dfSearchO and bfSearcirO are similar 
to the travei'sal procedures described above. The main difference 
is that trace code, graphics displa\' code, and code to see if the 
search coordinates are inside each node has been added. The 
procedures are recursive, and recursion ends either when a node 
is found or when the entire tree has been searched. To make 
bfSearchO less conftising, the code to allocate and link a new queue 
node into the search queue is in allocQueueO, and the code to free 
the queue space is in freeQueueO. Since allocQueueO needs to 
modifj' the pointers sent to it, the addresses of the pointer variables 
'topQueue' and 'prevQueue' are passed to allocQueueO. In al- 
locQucucO, these \'ariables are declared as pointers to pointers 
(pi-efL\ed with "*'). When I first started using pointers, it took me 
a long time to figure out how to declare pointers in a procedure, 
so that die changes to the pointer cou!d be sent back to tlie calling 
procedure. The call to allocQueueO and the pointer declarations in 
allocQueueO show how it's done. 

AllocQueueO just sets up a new queue node and adds it to 
the end of the queue. FreeQueueO frees the entire linked list of 
queue nodes by iterating using 'next' pointers. 

The entire tree is built, and the nodes are placed with 
allocNodeO and piaceNodeO- The tree is recursi\'ely freed with 
freeNodeO- The tree is graphically displayed using display TreeO 
and displayNodeO. In my last article, I described how diese pro- 
cedures worked . If you missed die article, you should be able to 
figure them out from die comments in die code. 

All Intuition input is taken care of in handlelnputO and 
waitForButtonO. HandlelnputO calls one of the two search proce- 
dures using a function pointer. The function pointer value is set to 
point to either doDFSearchO or doBFSearchO, depending on 
which menu item was picked. After the mouse select button is 
released, handlelnputO checks to see if the function pointer is valid, 
and if it is, calls die search ftmction dirough the pointer. When 
either the 'QUIT menu item is picked or the window 'CLOSE' 
gadget is picked, handlelnputO make.s sure all messages are given 
a reply, then returns control to mainO. The program dien cleans up 
behind itself and ends. 



SO YA WANNA 

WORK WITH 

VIDEO... 

YOU CAX DO IT! 



VOU HAVB HKAP Ainu T IT MONTH 

AITEH MOMll. IILT WIIA I' DOKS IT 

HEAI.1.V TAKKTOdET INTO THE 

\'IDt;0 riELl) »1TH VOLR A.VIKJAf 

WHAT E[J1..1PTMENT«TU. V(JU 
MiED? 

WHAT IS viv INITIAL INVKSTMENT 
(iOINCTOCOSTMK? 

Al.l. OE THESE QllESTIOVS AHE 
AN.SWEKEl) s6 vol) KNOW 

Ausoi.LTELV evervthim; VDU 

NEEUIO KNOW T)K;KT STARTED 
A.VDt.-ETJOUS: 

TIIISI.rN<:TIIVI\STRlCTIl>S^L. UEinpin.i.s 

VOL ^ml^llSIl^■|v^ \H^■ tv(ikk> tll^ njsj. 

»\IHr H\H[>Vl VKt 1^ VKI KSSAKV, IMI MOSTfll- 

Ai,i. iii>iH ii>rK.inH vi.L> ^'>^ ^dlh 

HJliriXH.M 

< <IMr>li h II KS « ^SOkklSi: |-UlI|.h'^Sl!>VAl. 
MliKu 1^ IM. mis TAl-h SH(|IV> sni liih- )t^\t 
IKl IIMIJI K>> tKflM ".IHKIEIM. I ll-v MM ri)M) 
rttLIM,. ^ll>^l IMi'ElUMMl > ^M ^HnW VOI' 
IIIIIV IUM\HK> [ \n! H^^L^ M>^,.l « ^s UK 

info-p.\cke'd \ideo 
for professional 
video with your 

AMIGA 



ATTENTION 
DIGITIZERS 

EIVAl.I.Y A LOW COST IVSTRl CTIONAI. 
VTIJEOF'ORYOLR OIOlTIZliR rOVEiRINO 

KvrnYTiiiNii J k()\i(.a\ii:ra am) 
i.ic.HiiMiin.«'i;Mi;M im si.Nn your 

IIMSHI-.DI'RDDl CTWIIH YOCR 
l-AVORIU-: I'AIM F'RDGRA.M. 

<;etthe RK-si i.T-i viir want: 

MAKE MONEY WITH VOLR 
IlKIITIZEK 

LKARN'TO IMF'ORTVOLR DIGITIZATIONS 

INTO Z-D A.ND ID ANIMATION 

PROGRAMS AND REAl.r/.E THE FULL 

POTENTIAL OK VOIR AMHiAl 

ACHIEVI-; I'ROrESSIONAI. RESULTS 
USING THE KEY TKCHNKJLES NOT 
EVEN COVKKEI) IN THE MANUAL;: 

SECRET.SOKTWARETIHS PRECIOUSLY 

LNMENTIONEO WILL BRING YOVR 
DIGITIZATIONS LIGHT YEARS AHEAD!!! 

VOL' CAN USE YOUR [>l<ilTI7.KRT() 

MAKE MONEY. AIL METHODS ARE 

DISCUSSED IN DETAIL SO YOU CAN OCT 

STARTED!!! 



INFO-PACKED VIDEO 

FOR PROFESSIONAL 

DIGITIZING 



ONLY $19.95 EACH 
$34.99 FOR BOTH 



.Add S2.50 per video for Shipping & Handling 
Send Check Ur MiHie> Order l"o: 

^tICHAt:I.A^GK!.o i'kodvctions 

1755 EL CERRl TO I'l.. S4(U 

L.A.. CA. MU2S 

\VK (;i,Al)LV ACCEKT VISA Hi .MASTKRCAHI) 

Call in vnur order • (2IJI 874-7-404 

You tan F.\X us at - (2i3( 874-9460 



We Also Do Quality 

Customized 

Digitizing 

$2.00 Per Picture 

IFF Comiiatable 



Send pkruT 
UKaddm. 



Circle 128 an Reader Service card. 



Most of the program is fairly straight-forward, altliougll 
recursion and recursive data structures can be confusing in even 
very simple programs. I hope the comments in the code and the 
algoritlim descriptions above are clear enough For you to under- 
stand how the program works, because the techniques are useful 
for Amiga programs. The program shows how Intuition's menus 
can be managed with tree techniques. If you look at window and 
gadget structure definitions, you'll see that tliese stractures are also 
lists which are combined into lists of lists. In fact, almost all Amiga 
data strtictures are lists and lists of liscs! These staictures are so 
impoitant to the Amiga that the 'exec' librarj' has list management 
procedures built right into it. 

Pointers, recursion, linked lists, lists of lists, and trees are 
techniques and data structures which are confusing when you first 
start working with them, but once you understand the basic ideas, 
tliey become easy to use. From my own experience, I find tlie best 
way to learn new programming methods is by copying and 
modif\'ing plent\' of examples of the working code. Witli a little 
persistence (and a lot of debugging!) diese SDructures and tech- 
niques can be mastered and used to create some Amazing Amiga 
programs. 

FURTHER READING 

If you are interested in different tj'pes of search, Artificial 
Intelligence, by Patrick H. Winston, is a good book to start with. The 
bookis published by Addi.son-Wesley Publishing Company, Read- 
ing, Massachusetts. Many types of 'search' are described in an 
English-like pseudo-code, and the descriptions uses a lot of clear 



Amazing Computing V5. 7 ©1990 



S3 



diagrams. This book is a good and underscandable imroduccion to 
most of tlie ideas being explored in AI research. 

Artificial Intelligence Using C, by Herbert Schildt, has a 
chapter dedicated to several common search techniques, and has 
examples of C programs which use the techniques. The book is 
published by Osborne McGraTV-Hill, Berkeley, California. Tliis is 
also a good introduction to AI, and each topic covered has working 
C programs which demonstrate tlae concepts presented. 

For those of you who are interested in graph theory' (trees are 
Special types of graphs) and like to read mathematical texts, 
Concepts in Discrete Mathematics, by Sartaj Sahni, has a chapter 
which covers graphs, trees, padis, and connectivity. This book also 
covers many of die madiematical ideas used in dieoretical com- 
puter science. The book is published by the Camelou Publishing 
Company, Fridley, Minnesota. 

LISTING ONE 



Listing 1. searchTraa.dta - example rrace oucpuc from 
searchTree pirogram. Both depth-first and 
breadth^f irst search were performed by 
selecting node 2.1. 



PerfDrming depth-first search... 
Seeking node at 1S7,101 
In DFSearch at ieviel 
Searching node 0.0 

In CFSearch at level 1 
Searching node 1.0 

In DFSearch at level 2 
Searching ncde 2.0 

In DFSearch at level 3 
Searching node 3.0 
Searching node 3.1 
Searching node 3.2 
Re::i:rning frcr, level 3 
Searching nsde 2 . 1 
Returning frors level 1 
Returning fron level G 

Pepch-First search csn-plete . . . 
found node 2 . l 

Performing breadth- first search. 
Seeking ncde at 186,100 
In BFSearch at level 
Searching ncde O.C 

In BFSearch at level 1 
Searching node 1.0 
Searching node 1.1 

In BFSearch at level 2 
Searching node 2 . 
Searching node 2.1 
Returning from level 2 
Returning from level 1 
Returning from level 

Breadth-Firsc seacch complete... 
fotind node is node 2.1 






LISTING TWO 



« Listing 2 - searchTraa . c 

" program. ~d demonstrace cree traversal 

« and cree search 

" Lattice ccnpiie £ link command: Ic -L searchTree.c 

" ccTJvright 138 9 by Forest w. ^nold 
*/ 

iinclude <eMec/types .h> 
tinclude <i nruit ion/ intuit ion. h> 
♦ include -<5tdio.h> 

/* intuition stuff 

tdefine IN7DITI0K_REV M 
Sdefine GRA?HICS_REV 34 
struct incuitionBase *Intuition3ase; 
struct GfKBase "GfjcBase; 



/* 



my ^make- life-easy' rtiacrcs 



#ifndef NOT 

f define NOT I 

lendif 

#define NEW(k> ( (x ■l:Tialloc{ sizeofi;:) ) i 



Define Tihe nodes and queue structures i types 



typedef struct node 
( 

sti^^ct node *neKt." 

struct node 

int Kl,yl,' 

int K2,y2; 

int level; 

int seqNo; 

1 NODE T; 



the tree nodes 



sibling link 
*child,- /" child link 



/' left, top coordinate 

/■ right, bottom coordinate 

/■ level in the tree 

/• se^quencB within the level 



typedef struct queNode 



struct queNode 

NODE_T 
1 QNODE T; 



*neKC ; 
♦nodeList; 



/* used Cor queue for 

/" breadth-first search 

/• sibling link 

/* list header 



/* define the output file 



char *DutFile = '*searchTree,cCa"; 
FILE *Dtp - NULL; 



♦define 


HRAD 


IS 


fdefine 


VHAD 


3 


fdEfine 


KDIST 


20 


♦define 


TOI3T 


20 


♦define 


KCOM 


IK 


♦define 


VCONS 


IVl 



define node geometric dimensions & horis and vert 
spacing hetween nodes 



/• ellipse horizontal radius 
/* ellipse vertical radius 
/* horiz disc between nodes 
/* vert disc between nodes 
(HPAD+HRAD+HDIST) /* horiz (. vett disc 
(VRAD+VRAD+VDIST) /* actual values 



/* global variables 

static struct Window "window « NULL; 
static struct RastPort *rp •= NULL; 
srazic in- te.-^cHeigh!: = 0; 

/*' intuition interface procedures 

struct Window 

struct IntuiText 



struct Menulteni 
stxruct Men-j 



struct Kenu 
void 



*displayWindow( int l^inc c,inc w, inc 

char *narae ) ; 
*allocITe>:c ( short l,shori t, 

unsigned char 'scrPcr ) ; 
"allocMenuItent shoct 1, short t, 
short Wj short h, 
struct IntuiTeKt *3crPtr 
^allQCMenui short l^short t, 
short w, short h, 
unsigned cnar *str?tr ); 
*inicy,enu( void } ; 
freeMenu( struct Menu *topMenu }; 



h. 



/* 



depth-first search procedures 



void doDFSearchI KODE_T *root,int x,int y ); 
NODE? "dfSearch{ NODE_r "copHode, int indent, 
int K/ int y ) ; 



/" 



b"eadtii-f irst search procedures 



void doBFSearchI NODE_T *roat, int K,int y ); 

NODE_T "bfsearch( QKODE_r *queue, int indent, int x,int y >; 

QNODE_T "allocQNodel QNODE_r *"topaNode, 

QNODE_T '*prevQNode, HODE_T *node ); 
void f reeQusue ( QNODE_T *t:opONode >; 

/• tree procedures •/ 

NODE_r 'allecMcdel int number, int level 1; 

int placeNodel I^ODE_i' "topNode, int top, int left ); 

void freeNodel NODE_T 'topNode ); 

void displayTree ( liODE_T 'topNode ) ; 

void displayNode ( NOiJE_T 'node, int pn^ int mode ); 

/* input procedures */ 

void handlelnpuc ( N03E_t TootNode ) ; 
void waitForButton ( void ); 

/* utility procedures •/ 

void displayWsgl inc x, inc y,char "wMsglfChar •wMsg2, 

char "wHsgS^im: pen ); 
void cleanup f NODE_"i "root, struct Menu "T.enu ); 
void closeLibs ( void ) ; 
void trace ( char 'msg^ int indent ); 
int openLibs I void | ; 



84 



Amazing Computing V5.7 ©1990 



void main! inc argc^char*' argv ) 
{ 

NODE_T root; 

scruct TeictAttr Ca3aCa; 

struct Kenu *raenu; 

/• open files and libraries 



/" tcp- level node */ 
/* window's text data"/ 
/* search top menu */ 



if ( outFile[0] !- 'NO' ) 
{ 

if ( NOT !otp = fopen toucFile, "w") J ) 



printf ('*\nCs,n' 



open t^ace output £ile, , , \n"f ; 



} 



) 

if ( NOT openLibsO ) 

( 

cleanOpI NULL, NULL), - 

printf (**\nCan' t open system libraries .. -Nn") ,- 

eKit (1) ,- 
} 

i* set up the top-level node of the tree 

root .level = 0; 

root . seqNc =0; 
root.^l fi 20; root.yl « 15; 
raot.x2 = root.Kl + HRAD + HRAD; 
root.y2 = root.yl i- VRAD + VRAD; 
root. next = NULL; 



/* 



recursively allocace tree i position noses 



•/ 



root, child = aliocNocJe (2^ 1) ; 

(void)placeNode Croot. child, root, y2-*VD 1ST, root ,xl} ; 

/* allocate window £ monus •* 

if ( NOT [window = dispiayWindow (0, Q, S^O, 20C, 

"TREE SEARCH") } J 
( 

printf ("Can' t allocate display window\ri"); 

cleanup ( iroot,NULL ); 

exit [1) ; 
1 
rp ^ wiridow->rlPort; 

/* get ths font height * 

AsitFont (rp, itaDataJ ; 

textHeigiit = (int} taData.ta_YSize; 

if ( NOT (menu = initHenuO} ; 
I 

printf f^Can' t alloc^ite menus Vn* } ; 

cleanup ( SrootrNULL J; 

exit (!}; 
1 
SetMenuStrip ( window, j'ier.u }; /* attach rrenu strip " 

/* recursively display the tree * 

displayTree f iroot J; 

/■ handle rcienu input until ""QUIT" picl-ced • 

handlelnpuc ( &root 1 ; 
cleanup ( iroot, isenu 1 ; 
eKlCCO) ; 






doDFSearchO - driver roucine to perform depch-firSE 
search. Sets up IDCMP 6 displays message^ then calls 
search routine. 



void doCrSearcht NODE_T *roQt, int .x,i,tit y ) 
1 



char 
NODE T 



msgreOJ, -rfMsgl,''wMsg2,*wHsg3; 
* found; 



set IDCK? to get mouse button events^ then print 
messaces £ call DF search procedure 



MoclifylDCMPI window, HOUSEBUTTONS }; 

sprintf (msg, ''\nPerforming depth-first search.,,"); 

trace I psg^ ) ; 

sprintf Imsg, "Seeking node at %d, ^d"^ x, y} ; 

trace ( nsg, 3 ; 

wKsgl = ""zreprh-Firsc Search:"; 

wM£g2 ^ nsg; 

wMsg3 = ""'select' to Search next node"; 

displayHsgt 20, 160, wMsgl, wMsg2,wMsg3, l ); 

found ■ dfSearch ( root,0|j{,y ); 

dlspIayMsg (20, 1 60 , NULL, wMsg2 , wMsg3 , ) ; 



Professional Quality Fult Color Video Digitizing 
Pro-Res SUU video Interface 

* Interlace any color video stili frame to your digitizer without a color wheel. 

* Control and Modify the Video before you digitize. 

* Preview the Adjustments real-time on your RGB Monitor. 
Ht Professional Results. 

Accurate Regenerated Vertical and Horizontal Sync Pulses 
True 75 ohm input / output loads 
Special Sync circuits for Still-video and VCR Video 

* Easy to Use 

Automatic operation with f^EWTEK's Digi-Vlew™ 
Manual Stepping with other Slow-Scan Digitizers 

NOW SHIPPING RET AIL $399.- 


Full Color Postscript™ Printing For Under $5,000.- ? 
Impossible.... L/nf// /Vow.' Introducing 

ColorDrive™Color postscript™ Primer Driver 

* Drives the most common color printers used with the Amiga 

Up to 300 DPI, 3 & 4 color separations, A & B page size 

* Full Color Desktop Publishing Support 

Bit-mapped & structured color graphics; color text 

* Downloadable Forits Standard 35 fonts availaible 


DEALER INQUIRIES INVi 1 LD 

DIgl.Vlnv !• ■ bsdHimrli ol KEvnEK, IncL 
AmlQA 1* a iTjidernBrK or CBM.hc. 
Pofllv^pl l« a frdddmark tA Adob» Sy«tB(ns, Inc. 
Pf o-Ro* ond CdtJtDrlve «e trademBrM oF TOA 


TDA Ihe (Des^op Mmntage 

560 NEF Street, Suite 4 

Grants Pass, OR 97526 

(503)476-8254 





Circle no on Reader Service card. 



sprintf (msg,''\nDepth-First searc^i conplece, , .") ; 
trace ( msc, ) ; 

if i found I 

Sprintf (msg, *'found node %d.%d", 

found->level, fDufid->seqNQ) ; 
else 

spi'intf (msg, "no node found at search coordinates . "J ; 

tracE (resg, 0) ; 

wMsgZ - T.sg,- 

wKsgS = '^^selecc' to continue"; 

displayMsg(20,l60,KULL,wMs52,-wMsg3,l); 

waitFDrButton ( 1 ; 

/* clear r?.essaqe^, resrore IDCMP, & tecum "v 

displayMsg 12 0, ISO, wMsgl, wK£g2, wKsg3, Q) ; 

HodifylDCMet window, CL03EWIKD0W|MENUPICKIMOUSEBUTT0NS 1; 



dfSearchO - recursively perform depLh-first search- 
This procedure tiighlights the node, waits for select 
buccpn, unhigtilights the node, and recursively 
cop = topNode,- 

sprintf (iTLsg,"In DFSearch at level %d'', top->level) ; 

trace (msg, indent) ; 



while ( top ) 



f 



sprintf(msg^ "Searching node %d.%d", top-S-level, 

top->3eqNo) ; 
trace (jnsg, indent ) ; 

/* highlight node, wait for button i, unhighlight it*/ 

displayNode ( cop, 2,1 ) ; 
waitFcrButtonO; 
displsyNode ( top, 2,1 ); 

/* see if node is at the input search coordinates */ 

if ( top*->Kl <B X && X <^ top->K2 &£ 
tOp">yl <- y ii y <" top->y2 ) 



return ( top ) ; 



/* found it "/ 



Amazing Computing V5J ©1990 



85 



/* recursively search child nodes 

level = tcp->level; 

if { noD->chiid ) 
{ 



{ 



if ( found = dfSearch (:iop->child, indenL+3,x, y) 1 

sprint f (rr.sgy "Reccrning frox level %d'', level ); 
trace {nisg , indent: I ; 
return ( found 1 ; 



zop = top->nej^ 



/•■ get sibling node 



Sprintf (rnsOi "Re'jurning fron level %d", level); 

trace (nsg, indent) ; 

return! NULL ); /- didn't find a node 



" dDBFSearch I) * driver routine to perfor.-n breadth-first 

* search. Sets up IDCTMP 5 displays message, then sets 

* up a queue structure [firat-in, first-out list) . 

* The queue is used for che search, since it links 

* together disjoint sibling lists on same tree level, 
*/ 

void doBFSearchf NODET "root, int k, int y ) 



QKDDE^T 
char 



■rootQKode; /■ links lists together ■/ 
"found; /* ptr to the found node*/ 

Ensg[SO] , "wKsgl, -wK£g2, *wMsg3; 



/" set IDCH? to get irvouse button events fi show message""/ 

ModlfyIDCMP< window, MOUSEBurrONS 1; 

/* set up the search queue (FIFO list) which chains */ 
/" sibling lists at same level together "/ 

if ( NOT (rootQNDde = NFW(QNODE_T) ) ) 
{ 

print' ("Can't allocate memory for QNode.Nn"); 

return; 
I 

tootQNode->nejit '^ NULL; 
rootQNode->nadeLis- ^ r::nt; 

/* oxitput message data s do the search •/ 

gprintf (msg, "\nPer forming breadth- first search. . . "1 ; 

trace { msg,Q ) ; 

sprintf (msg, "Seeking node at ^d^ %d", x, '/) i 

tracifi ( .T.sg, ) ; 

wMsgl a "Breadth-First Search:"; 

wMsg2 = rr.sg; 

wMsgS = "^select' to search ne>;c node"; 

dispiayMsgt 20,I60,wMsgl,wMsg2, wMsg3, 1 ); 

found » bfSearch( rcotQNode^O, x,y J; 

displayMsg (20,160, NULL r wM5g2 , wM3g3 ,0); 

sprintf (msg/'\n3readth-Fir5t search complete..."); 

trace ( msg, ) ; 

if ( found } 

sprintf (rrisg, "found node is nod.e %'d»%d'*, 

fOund->levGlf found->seqKo) ; 
else 

Sprintf (nsg, "no node found at search coordinates."}; 

trace fmsg, 01 ; 

wf^g2 = msg; 

v:MEg3 = "^select' to continue"; 

displayKsg(2Q, 160,NULL,wMsg2,wMsg3, 1) ; 

waitForButton () ; 

,''* clear message, restore IDC:-^, a return '/ 

di5t:lavHsgi20, 160, wMsgl, wXsa2,wMsg3, 0) ; 

K0difyIDCMP< windOW.CLOSEWINDOWIJ'lENUPICKIMOUSEBUTTOHS >; 



! 

/' 

" bfSearchO - recursively perforjn fcreadth-first search 

* This procedure iterates on a queue containing pointers 
» to all lists at the sane level of the tree- Each 

* list is removed from the queue, and the procedure 

* iterates on each node in the list^ Each node is 

* displayed, then if the node has a child list, a queue 
" node is allocated to point to the child list, and the 

* queue nodes are linked together. After all 

* lists at a given level have been searched, the 

* procedure recursively calls itself to search the next 

* level using the queiie constructed for the next level. 
*/ 

NODS T '■bf Search t QNODE_T "queue, int indent, int K,int y ) 

i 

* these qNode pointers are used to construct i. lin)? 



•/ 



together the queue of child lists and to iterate 
on the current queue of lists 



QNODE_T *topQHode, *newQN'ode; 

QHODE_T "prsvQNode, *ne;(tQNode; 

MODE_T -found; /• the found node, if any -/ 

NODE_T 'top; /" the current display node •/ 

int level; /" current tree level ■*/ 

char m3g[80]; 

topQNode " prevQNode = NULL; /* inic next level queue"/ 

found - NULL; 

level - queue->nodeList->level; 

sprintf {msg, "In BFSearch at level %d", level!; 

trace {mag, indent) ; 



iterate on the queue nodes for this level. Get the 
list of sibling nodes from the queue, and then 
iterate on the nodes in Che list. 



while{ queue ) /■ itei-ate on queue nodes "/ 

I 

top •» queue->nodeList; /* the list of siblings ■/ 



/■ iterate on nodes 



while{ top ) 
I 

displayNode( top, 2,1 ); 

waitForSutton () ; 

displayNode( topj2,l ); 

sprintf (:r.sg, "Searching node %d.%d'', 

top->level, top->seqNo) ; 
trace (nsg^ indent) ; 

/» see if node is at the search coordinates */ 

if ( top->Kl <= K it K <= top->K2 && 
tDD->vl <^ y it y <= tOp->v2 ) 
I 

/* 

• Found it. 

* He need to free any qKode space for both 

• the current level and alsc the space for 

* the next level's queue before returning 
*/ 

f reeQueue ( copQNode ); /* child list queue */ 
f reeQueue ( queue ); /* this level's queue */ 
sprincf [msg, "Resuming from level %d", 

top->level) ; 
trace (nsg^, indent > ; 

return ( top ); /* search is over */ 

1 

/- 
« if this node has a child list, allocate a 
* qNode, set its pointer to the list, and link 
" ic into the queue for searching the next level 



if ( top->child ) 

newQ^■cde = allocQNode (itopQNode, sprevONode, 

cop->child) ; 

if ( WDT newQNode I 
i 

printf (^bfSearch: out of rieT.ory\n") ; 

return! fiULL ); 
J 
cop = cc?->next; /* next node in current list */ 



It vasn't in list just looked at - get the next 
queue node and free the one just used. 



nextQNode ^ queue''>nent; /' get sibling queue */ 
f ree ( {void»)queue ); /* free last queue node ■/ 
queue " nexcQNode; /" set current que node */ 



• if queue of child lists constructed, call self to 

* search it 



if { ttopQNode ) 

found » bfSearch (topQNode, indent-t-3, K, y ); 

sprintf (msg, "Returning from level %d", level); 

trace (msg, indent^ ; 

return! found ); /" either KULL or a found node */ 



/• 



allocQNodel) - allocate & link a new qNode structure 
into a queue. Pointers to pointers 
are used so the pointer's value can 
be changed 



86 Amazing Computing V5J ^1990 



QNODE_T *allOCQHode( QHODE_r **topQNode, 

QNODET «*prevQNode,N03E_T "node ) 
i 

QNODE_T *newQNode ; 

/* aiiocate the new qNode struct 

it ( NOT (newQNode = NEW(QWODE_T} > > 
return ( NULL | ; 



/* init the links 



newONDde->nodeList = node; 
niewQNQde->nej:t - NULL; 



pointer cs node list 
link for queue nodes 



*/ 



*/ 



* if a queue has already been started, just link this 

* one ih at the end of the queue. Otherwise, this is 

* first node in the queue 
*/ 

if ( *prevQNode ) 

(*prevQMode) ->next = newQNode; 
else 

•topQNode « newQNode; 



^prevQNode = newQNode; 
return ( newQNode ) ; 



/" ptr to last one in queue 



} 
* f reeQueue (I 



free an entire queue 



void freeOueue( QNOD£_T «tOpQNode ) 



QNODE_T *prevQNode; 



while! topQNode ) 

I 

prevQNode " topQNode; 
topQNode = topQNorfe->next 
f ree { (vsid *) prevQNode } 

J 



standard linked list iteration •/ 



allocNode - recursively allocate £ initialize 
tree nodes. After each node at a level is 
allocated^ this routine calls itself to allocate 
the child nodes for the next level. This is 
specialized for naking the demdnstrAtion tree. 



NODE_T *allocNOde (int number, int level) 
{ 

static int seqd - {0,0,0,0}; /* count of nodes by Ivl"/ 

NODE_T "node, "prevHode, *topNode; 

int i ,' 

topNode - prevNode = NULL; 

/* iterate sn nu-T^ber of requested nodes for the level '/ 
0; i < number; i++ J 

*/ 



fort i 
{ 

/* .Tiake tree non-syninietric 



if ( levol 
break; 



3 && seqilevel] > 7 } /* ? nodes for -/ 
/* level 3 */ 



if ( level ^^ 2 S,i seqilevel] > 2 ) /* 2 nodes for */ 

/* level 2 ■/ 



break; 
/* allocate & init the node 

if [ NOT (node - KEW(NODE_T)) ) 
( 

prlntf (*allocHode: out of memor/. Xn") ; 

returntHULL); 
i 

node">seqNo = seq[levell^+; 
node->level = level; 
node->thild = NULL; 
node->next - MULL; 

if ( NOT prevS'ode ) 

topNcde - node; 
else 

prevNode->next - node; 

prevNode ~ node; 



/« sequence nujniser */ 

/* tree level '/ 

/" child link "/ 

/" sibling link '/ 

i* is it first one? */ 

/* yes, set lat node */ 

/' put node at end */ 

/" make 'node' prev */ 



allocate level 2 children of level 1 nodes 

( level "- 1 ! /• ask for 2 children for Ivl 2 

nade->Ghild = allocKode<2, level+1) ; 
continue; 



We take a ^out of the price! 




ONE BYTE 

P.O. Box ASS 

Quaker Hill. CT 06375 

(800) AAT-BYTE, in CT (203) 443-4623 

: YOUR 0ME-ST0PiMili2A^ STORE i 



fluthoriied deoler for 

Commodore-flmiga Computers, 

Great Vqllcy Products (QVP), 

fiuthorizcd Commodore-flmiga Service and Repair. 

Authorized Amiga graphics Dealer 

Circle 135 on R&ader Service card. 

A.MIG.\ IS A R£GISn^KtDTK.\DliM.-VHK OF COMMOL>OHJI AMIGA. INC. 



/* allocate level 3 children of level 2 nodes 

if ( level == 2 > /* ask for 3 child nodes 
node->chlld ^ allocHode (3, level-*-!) ; 
} 
return! topNode }; 



placeNode - recursively set node coordinates and 

return next x coordinate, Y coordinate 
is increinented in recursive call and 
restored on return fro^i recursion. 



Int plflceHode<NODE_T •topNode, int top, int left) 

{ 

NODE_T *node; /• the current node 

int offset; /• current left coordinate 



offset = left; 
node = topNode; 



/* iterate until list is empty 



while ( node ) 
K 

/* set node bounding box corner coordinates 

node->xl = offset; 

node->yl = top; 

node->x2 - offset + HRAD -f HRAD; 

node->y2 ^ top -i- VHAD + VRAD; 



■ if the node is not a leaf, increment the top 

■ coordinate and recursively place its children 
* Starting at same k coordinate. 

■ If it is a leaf node, just increment left 
■* coordinate and place its sibling node. 

-/ 

if { node->child } 

offset = placeMode (node->chiid,top+VCONS, offset; ; 
else 

offset += HCONS; 



node " node->neiit; 



/• 



set node to next in list */ 



Amazing Computing V5. 7 ©1990 



87 



return! offset ); 



return che left cocrdinace*/ 






freeNode - recursively deallocate nodes. 
This procedure iterates on a list of nndeg. If the 
node has child nodes, the procedure calls itself to 
free the child list before freeing the current node. 



void freeNodel NODE_T *topNDde ) 
( 



while < topMode ) 



stop when 'NULL' 



if a node has children, recursively free all 
child nodes before freeing self 



if { topNode->child ) 

freeNodei[ tapNode-schild > ; 

next - topNode->iiext; /* save link to sibling 
free< (void") tcptJode ); /* free the node 
tOpNodfi' = next; 



displayTree - recursively display entire tree. 
Procedure iterates on a list of nodes, displaying 
each node in the list. If the node has a child list, 
the child link is drawn, then the procedure calls 
itself to display the child node list. If the node 
has siblings^ the sibling link is drawn and iteration 
continues with the node's sibling. 






void displayTree t NQDE_T •topUode i 



NOD£_T 

int 

int 

top 



"top," /* local current node •/ 

CK,cy; /* geometric nods center */ 

oidx,old!f; /* previous node's edge */ 



topNode; 



/* iterate until end of list (NULL) •/ 



while { top ) 
I 

/* 

* find node center coordinates and save right, 

• center coordinates for drawing sibling link 



ex = (top->x2 - top->:-:i:/2; 

cy " (top->y2 -r tGp->yll/2,' 

oldX = top->x2; 

oldY = cy; 

dist>layJJode( top, 1,0 ); /• display the node "/ 



1 



if ( tDp->child J 



draw a child link from bottom center of this 
node, then recursively display child list 



SetAPenirp, 2) ; 

Move ( rp,cx, top~>y2 ); 

Dcaw( rp.CK, top->y2+VDIS7 ) ; 

Kove( rp,c;;-'J,top->y2+VDiS7-4 ),- 

Dtaw( rp,CK,top->y2+VDl3T ^; 

Draw( rp,cx+4, top->y2+VDlST-4 j; 

displayTree ( top->child ) ; /* recurge * 
1 

if ( top = cop->ne:it ) /' set * test for sibling - 
1 

/* 

* draw a sibling link from right center of last 

* node CO left center of this node 



SetAPen(rp,3) ; 
Move( rp,oldX,oldy ); 
Draw( rp, top->jcl,oldy) ; 
KDve< rp,top->xl-4, oldi'-4 ); 
Draw( rp, top->xl, oldt ] ; 
Draw( rp, top-^xl-^, oldlff'l if 



displayNode (1 - display a single node as an ellipse. 
This procedure is used for both regular display & for 
highlighting a node* 



void displayNode! NOI>E_T *node,int pn, int mode ) 



char 
int 



levStrtlO]; 
ex, cy; 



/• node level display string ■/ 
/" node center coordinates "'' 



if ( mode 1 /* display in ^highlighr^ mode*/ 

SetDrMd(rp,C0KPLEKENT3 ; 
else /« noriaal display */ 

SetDrMd^rp, JAMl} ; 



■ get node center, draw an ellipse, then get the 
" node level and display it 
*/ 

ex = |nDde->x2 + node->Kl)/2; 

cy - !node->y2 + node->yl)/2; 

SetAFen(rp,pn) ; 

DrawEllipse ( rp, ck, dy,HRAD,VRAD) ; 

sprint fdevStr, '"%d.%d'', nade->level, node->3eqHo) ; 

Move I rp, cx-12,cy+3 ); 

TeKt itp,levStr,31 ; 

SecDrMdirp, JAMIJ ; /* restore draw mode to normal *f 






handlelnput - monitor user input until end action 






void handlelnpLt ( NODE_T 'tsree ) 
( 

struct IntuiKessage "msg; 

unsigned lor;g class; 

unsigned short code; 

int endCode, K,y/menuNum; 

void ['search) (} ; 

char *wMsgl, *wMsg2; 

search " MULL; 

endCode ^0; 

wMsgi ^ ^'?ick a search method from the menu^",- 

wMEg2 " ^Then picJc a node for the search."; 

displayMsgt 20, 160, wMsgl,wMsg2,NULL, 1 ) ,- 

tor{;;) 
I 

Wait ( 1 << wlndow->User?ort->rap_3igait ); 



while ( msg 



(struct IntuiMessage *1 

GetMsg (window->UserFort) ) 



class " msg->Class; /' save message class 
code = msg«>CQde; /* and message code* 



X - msg->MouseX 
y - msg->HouseV 
ReplyMsg( msg I 



/* and coordinates where 
/" event occurred 
/■ Reply right away. 



if ( class =»«= CLOSEwlNDOw ) 



endCode 
break; 



close gadget 



if { class 



MENUPICK ££ code 



menuNura - HENUNUM(code) ; /* valid menu pick 



^QUIT' menu 



doBFSesrch; 



if ( menuNum 
1 

endCode ^ 1; 

break; 
1 

switch ( llEMrJUM(codel ) 
I 
case 0: 

search = doDFSearch; /' set function ptr */ 

break; 
case 1: 

search 

break; 
default: 

break; 
1 



if we have valid function fi select button was 
released^ perform the search 



f { search tfi 

class == M0USS3UTT0NS && code -^^ SELECraP ) 

displayHsg ( 20, 160, wMsgl , wMsg2^ KULL, ); 
{■search! ( tree,:(,y 1; 
displayHsg ( 20, 160, wKsgl , wMsg2, KULL, 1 ); 



endCode ) 
break; 



end while 
end for 






^end' event * jumped out of loop 
make sure i::essage queue is cleared 



88 



Amazing Computing V5. 7 ©1990 



while ( rssg = (struct IntuiMessage *J 

GeLHsg(winclow->UserPort) ) 
ReplyHsg ( msg ) ; 
1 

/■ 

* waitForButtonO - wait until user presses ^select' 

* button 
V 

/*—-.,..———— ^-™™— ^ .............^ 

void waitrorBuCton ( void ) 
C 

struct. IntuiHessage *iiiag,* 

unsigned long class; 

unsigned Long code; 

;or ( ; ,- 1 

Wait ( I « windew->UserPGrt->nip_Sig3it ); 

while ( ffisg = {struct IntuiMessage *3 

GetMsg (wir.dDw->UserPart> 1 
1 

class = rr.sg->Cla3£; 

code " msg->Code; 

ReplyKsg( mag ) ; 

if ( class -- MOUSEBUTTOHS && code ^^ SELECTUP ) 
retu-cn; 
} 
} 
\ 

/• 

* cleanup (1- free structures, close windoM, £ close files 
-/ 

/* .— „.. -....»........../ 

void cleanUi>( NODE_T "root, struct Menu 'menu 1 
{ 

/• 

* if we have a menu and a window, clear the nenu and 

• recursively free entire nenu strip 
-/ 

if { jaenii J 
( 

if ( winciow ) 

ClearMenuStript window ); 

f reeMenu ( menu ) ; 
\ 
if ( window ) /• ditto */ 

CloseWindow( window ); 

/" recursively free the entire ccee •/ 

if I root ) 

freeNodef root->child ]; 

if ( otp j /■ flush & close output file '/ 

{ 

fprintf (otp, "VnDono. .\n''J; 

fflush(otpl; 

£close(ocpl .- 
1 

closeLlbs ( ) ; 
1 

* trace (^ - output indented trace messages for recursion 
/^-_-— ^ ^™ ^ ^^ — __^ ^-. — ^/ 

void trace ( nsg, indent 1 
char "msg; 
int indent; 
J 

int i; 

if ( NOT Otp ) return; 

for ( i - 0; i < indent; i*+ ) fprii^tf [otp, " "J; 
fprintf (otp,"%s\n*',msg) ; 
) 

* displayMsgO - Write or clear up to 3 lines cf text 
" in a rastport 

"/ 

/•■""^■""^■■■■» ■■■"■■■■■■■■■■■■■""■*■*""»*"■■"•"""■ »"^=='==="""/ 

void displayMsgi int x,int y,char *wMsgl,char *w^Ssg2, 

char *wMsg3,int pen ) 
( 

SetA?en(rF,pen) ; 

Move (rp, x,y-^textHeight J ; 
if { wMsgl ) 

Text (rpfWHsgl, strlen(wKsgl) ) ; 

>Sove(rp, x,y+2*textHBight J j 
if ( wMsg2 ) 

Text {rp, wH3g2, strlen {wMsgS) ) ,' 



MOVING? 




SUBSCRIPTION PROBLEMS? 



Please don't forget to let us know, 
if you ore having a probiem with your 
subscription or if you are pionning to 
move, please write to; 



Amazing Computing Subscription Questions 
PiM Publications, Inc. 

P.O. Box 869 
Fall River, MA 02722 



Please remember, we cannot mail your magazine 
to you if we do not know where you are. 



Please allow four to six weeks for processing. 



Have (rpjKjy+3'texcKeighc) ; 
if ( K«sg3 ) 

Text (rp,wMsg3, strlen<wMsg3) ) ; 



QpenLibsO - open libraries 



int openLibs i void > 
I 

IntuitionBase " (struct IntuitionBase *1 OpenLibrary ( 

"intuition. library", INTUITION_REV) ; 
Gf xBase =• (struct C^f xBase • I OpenLibrary ( 

"graphics. library ",GRAPH1CS_R£VI; 

return! GfxBase j,& IntuitionBase J; 



) 

/ ■ z:s== = = = = = = ^^=^^^c a a 311 a 

/• 

• closeLibsO - close libraries 






void closeLibs^ void ) 
\ 

If ( IntuitionBase ) CloseLibrary ilntuiticnBase) ; 

if ( GfxBase ) CloseLibrary (Gfx3ase) ; 

} 

/* 
* displayWindewO - display an intuition windo« 



struct Window *displayWindow(int l,int t,int w,int h^ 

char *nanie) 
! 

struct SewWindow new; 

new,LeftEdge - 1; 
new.TcpEdge " t; 
new, Width = v; 
new, Height = h; 
neM.DecailPen - -1; 



Amazing Computing V5. 7 ^1990 89 



new.Block?en ■ -1; 

new. Title '^ name; 

new. Flags ^ WIKDOWCLOSE I S^5?LRT_REFRESK I 

WIKUOWDRAG I ACTIVATE; 
new.IDCMPFlags - CLOSEWINDOW 1 MENUPICK I MOUSEBUTTONS; 
new.FirscGadget - NULL; 
new.CheckMark - HULL; 
new. Type ^ WBENCHSCREEH; 
returni (struct window •) OpenWlndow ftnew) ); 



alloelTextO - allocate fi init an intuiText structure 



struct IntuiText "alioclText ( short l,shoxt t, 

unsigned char '■strPtr ) 

( 

struct IntuiText 'ts; 

if ( NOT (ts - NEK (struct IntuiTCKt) } ) 
{ 

printEC'^nallocIText: out af mem&ry, Xn": ; 

return I NULL 1 ; 
J 

ts-^FrontPen » D; 
ts->3ackPen = 1; 
ts-^DrawKade = JA^Sl; 
ts->LeftEdge = 1; 
ts->TopEdge " t; 
ts->ITe!lCFont - NULL; 
ts->IText = strPtr; 
ts->NeKtText " HULL; 
recuirni ca ); 
\ 

/* 



allocMenuItemO - allocate & init a menu iteic structure 



struct Menultem 'allocMenuItem ( short 1, short t, 

short w, short h, 
struct IntuiText *strPtr 1 



( 



struct Menultem *rai; 

if ( NOT (mi = NEW (struct MGr.uItem) S \ 

{ 

printf ("\naIiocHenuItera: out of meiTLory . Xn") ; 

return ( NULL 1 ; 
) 

rai->NextItem = NULL; 
rei->LeftEdge = 1; 
r:]i->TopEdge - t? 
nji->Width » m; 
mi->Height « h; 

rci->clags - ITEMTEXT I ITEMSNABLED | HIGHCOKP; 
nii->MutualExclude ■ HULL; 
rni->ItemFill - (APTR} strPtc; 
mi'>Co:Tinr.anci ^ NULL; 
mi->SubItem ■ NULL; 
fF.i->Selectrill - MULL; 
return { mi ) ; 



*i 



allocKenud ' allocate £ init a menu structure 



struct Menu *allocMenu ( short 1, short t, 
short w, short h, 
unsigned char *strPtr ) 



struct Menu 



•■menu; 



if ( NOT (menu '^ NEVf(struct Kenu) ) ) 
{ 

printf ("\nallocKenu : out of nieraory.Nn") ; 

returns NULL ); 
1 

menu->KextMenu - NULL; 
Tnenu->LeftEdge = 1; 
inenu->TopEdge = t; 
menu->Width - w; 
menu->Height = h; 
inenu->FlagS = MENUENABLED; 
:nenu->MenuNarae = strPtr; 
menu->FirstItefE = NULL; 
return ( menu > ; 



initWenuO - allocate & initialize all n-.enus 



struct Menu "initKenut void ) 
1 

struct Kenu *topMenu, 'lastHenu; 

struct Menultem *copIten;, *lastltem; 

struct IntuiText *text; 

short mWidth, mEeight, temp; 

/" set width 4 height & Init first menu list 

mWidfch » 100; raHeight - teKtHeight+-2; 

topMenu = allocMenu(0, 0,mMidth,inHeightr*?ROJECT* 

text = allooIText (10,0, "Quit") ; 

if ( topMenu -= NULL [ [ text ~ NULL ) 
return { NULL }; /* didn't get it 



*/ 



copMenu->FirstItem ^ allocMenuItem (0^ 0, 

mWidth,mHeight,text} ; 

/" allocate next menu list s link the menu lists ■/ 

temp = mWidth t S; 
topMenu->NeKtHenu = lastKenu = 

allocMenu (temp, 0,mWi<ith,mHeight, "PERFORM") ; 

if ( NOT topHenu->FirstIteni | | «0T laatMenu } 

{ /* didn't get it •/ 

CteeHenu ( topMenu ); /* free the first & return •/ 

return ( KULL ) ; 
} 

/• allocate * link together the subitems for 2d menu */ 

text ■ alloclTeKt (lO^O^^DF Search"); 
topltem " lastltem - allocMenuItcm( 0«0j 

mWidch^ciHeight.text); 



if ( NOT text 1 I NOT lastltem J 



f reeMenu ( topMenu ) j 
cetucn ( HULL ) ; 



/* didn'^t get them 



I 

lastMenu->FitstItem - topltem; /* link the items */ 
text « alloclText (iO,0,''BF Search"); 
lastItem'->NextItera^ = allocMenuItem ( Q.mHeighti 

raWidth.mHeight, textl ; 
lastltem = lastIteifi->Ne>;tItera; 

if I NOT text II NOT iastltem ) /* didn't get *ein */ 
{ 

f reeMenu ( topMenu 1; 

return \ HULL } ; 
} 
return ( topMenu ) ; 



free entire menu structure 



void f reeMenu ( struct Menu ^topMenu \ 
{ 

struct Menu *neKtMenu; 

Struct Menultera *raenultem, "nextltem; 

struct IntuiText *text; 



while ( topMenu ) 
i 

if ( menultem 



/" until end of menu list 
topKenu->FirstItein 1 

/* until end of item list 



while ( menultem ) 
{ 

if (text^ (struct IntuiText*)menuItera->ItemFill) 
free (text); /* free IntuiText *f 



/* free this menultem £ set painter to next 

nextltem - menuItera->NextItem; 
f ree ( menultem ); 
menultem -^ nextltem; 



/* now free the menu list ptr & set ptr to next 



nextKenu - topMenu->NextMenu; 
free ( topMenu ) ; 
topHenu ^ nextMenu; 



•AC- 



90 Amazing Computing V5, 7 ©1990 



The AMICUS 
Public Domain Software Library 

This software is collected from user groups and electronic bulletin boards around the nation. Each Amicus disk is nearly full, 
and is fully accessible from the Workbench. If source code Is provided for any program, then the executable version is also 
present. This means that you don't need the C compiler to run these programs. An exception is granted for those programs 
only of use to people who own a C compiler. 

Note: Each description Ifne below may include somelhing like 'S*0'E-D', which stands for 'source, object tile, executable and documeniation'. Any combination of these leners i n d i - 
cates what terms cf the program are present. Basic programs are pr@$6nt3d entirety in source code format. 



AMICUS Diskjl 

ABa£icprDgra;ns:Grapihics 

3DS(^ds 3d E&lds njodenrg p-og, w.'$a.Tple data 'Jes 

Bloct^ draws bl^ks 

Ci^)^ draws cubes 

Durof draws pictures ;nithe sly!eo( Duier 

FScape draws ra::'.aJ tarnlscapes 

Hidden 50 drawing pfos^a-'t, w hidden lir^e remcval 

JPad simple pai:]ipic^;a;T] 

Optca! draw sevfifafopiul illLrsfons 

PafiiEox sJmple paifil progfani 

Shutile drawsCTfl3huiilei.i[5dwite!ramg 

S paceAn graf^'cs d^m o 

Speaker speecn utiiltv 

Sphara draws sphwes 

Spiral draws c:kx spiral? 

TfveeDw 3d funcior plots 

Topography artFici'al lopogiaphy 

Wiwj draws drcisft-apiiics 

Xenos draws ifK'aTpfinffl IsndscasfiS 

AB«slc uograms: Tools 

AddrassoooK simple databasa progfiam \a add^s^es 

Cardfile amplecardfilftdaaDasG'prcgfam 

Demo m LtL wtaow tJema 

KeyCods showsl^ycodesitrahay^ou^ss 

ytem run tnanyASasic programs from a merj 

MofisCotas waytoseimtMCCJorsoftthBECfwn 

shapes sirdf^cofffS-^-Jpade^griefSpeakli 

speecfi a/^flanatordam 
ABuic programs: Gamtt 
BridtOut dassicccr?:pL-tertnckwaIt;iiame 

Oih^ a:»kncM]as'gQ' 

Saucef ^rnpCesTwI-efn-upgarnfl 

SfSlfrig EHiptatakf^s^Einfigamo! 

TorBex seleciaUfl jraphics flerro 

Am$(c programs: Sounds 
Ertenajief f^ysihaitjne 
HAL900Q presnds^-rsafeaicwnpuiar 

Pofica simpEewiiM jren sound 

^jgarf^ur ptays'TJw Dance oIltieSugiplunFai-ies* 
Cprograms: 

ATera srTip*teTT7ina]pfc^ra'n.S-£ 

cc aid 10 MnaiTQ we^^ U^Ce C 

decvra qsposie ol CONVERT for ctss flevdopecs 

Dotty sotffMCfflBBtfie'tfciiy wiwIcwdCTO 

echo* im-M]fteFiBnaffl8 eipa.ision. pal^i S,0-D 

f2£eftp SKprianiuSBOt Iast-fc3'.ing pc'irt rr.aih 

FnDate fafflhifcrettatesaiailf^escn ads)(,S£ 

ltee6aw $inpleWoi1diench[^vnr^p,-Dg..S-E 

GfiWfem gfapfticrnetncfy usage inkator. S-£ 

Gr^ SMrCtWS for a ay^ strirg in a file wrtTi JKS. 

tiam shows oH Ihe hd J-and-n:od^fy 

metfiodo! color gensration 
SMSArriiga !ast parate caS'e 1-ansters beiwwn 

aniSManCar^Am^a 
Mandel Mandiefbroise! pfograTi. S-E 

mora patsemed graphic defno, S-E 

ot^ii makes Laitce C otiaa fila symb^s 

vtsit^Bk) Wack.S-E 
quicSc quidi son strims rouljne 

raw enarrpJ^ sa-fiFJe iviridcw t'O 

setlaa Turns on InBrtace m«te, S-E 

sparts qix-tyw5r«phic<lS?RCi. S-E 

Ottief eiecutabCe programs: 
SpeectiToy speechdemonsiraiJon 
'/^c^Fcnl displays aJ! avaHatitQ lonis 
Texts: 

68020 descibes 58020 spe«t?up boa/d Irorn CSA 

Mb$« CKpaJns usesoflhoASSIGMccmmanc 

Bugs J(rwwn txq list in LaticeC 3,02 

CLCard refererice card lof AmijaDOS CLI 

CLlCmmaids gLjidetoi;sLTgi*-.eCLI 
Codi-nands shorte:' sues lo AmigaDOS CU annmands 
EdCcmmands gdife to itie ED edi»r 
FSenamsE AmgaDOSRefiiTiewikfcard cor/erisons 
HaTtSrlght explains rare ^'aprtci cWps that can do 

riorecoiors 
WodemPins desciptjon jf Sia serial jwrt pin«ji 
RAWisks tips on settira tjp yotf RAM; ds'i 

HOMWacH tpswiusing ROMiVai* 
Sounds expJanaSonof lnsiniiier:{tfenosand 

tile lonrtat 
Speed setuaiion c! AT.iga's CPU and cyssm cNp sped 
WadfCfTds tips Cin ls™ Wach 
AWieuSDjjjkj 
CprograTO: 

sT* AmgaOOS object Iibfa.7 mar-^er , S-E 

y leflfifea-chvepfDgran.S-E 

fiabj a:,io-chcps e^ecjtatte fi:« 

sfiri snpieCUil^.S-E 

Hj. usq HecanpfKscn praams. S-E 

YaOitC alaro3afgame,E-£ 

ttalte a Sjmpie'maKa' programming uuiity.S-E 

Emacs aneariyviKionof si Arrigaterteilo;, S-E-D 

Assembtcf programs : 
tsearc^-asm bir^ search co(ie 
qsQOiSffl Unr cof^paitie qsorQ function, soirtt 

a.^ C t&sl progracT] 
sajfrp^i-n Ee;jfTip(') coce lor Latfice 3X)2 
SVprtrt UnusySeriVceripaiitepfirKl^l 

teeso Un»compa5btelreeOhJn«ion,0-0 

(rhi$d<$ki;irraeHyhadifFspeciBatcnliesandei3inple$ Sirce 
tho spec I s consianiSy updated, lh& IFF spec Qbs tiava been nxNftJ 
to Jwf OftTi dsk in irte AWiCUS coHectm) 
Johri Draper Amiga Tutodals: 
ArwnaTe oescnbss aramatcr aiigontVns 

Gac^ts tatonaJonga:^^ 

M^xjs leam about Iniiibort menus 



AMICUS Dt^k 5 

Cpr&grams" 

Xrel a Ccrossfeference sen,, S-E 

66Kolor eiita-hail-tfighi c^i? gh deno, S-E 

Chop tuiocate [chop) f (es dcwn to siie, S-E 

Cleanup rer^jvessi-angBCharaflerEiiomSBflliles 

CF1?LF conveys canage raiums to'ir* leeds in Aiija fies. S-E 

Error aiMs aniple afTKS to a C tila. S 

Hfllfo w.ndow fin. Irom th& RKW. S 

Kemiii generic Kojmitimplemerlai.'on.Iiikey, 

no tejmina!motfe,S-E 
Scales sound dsmo plays scales, S-E 

3kewB Rybikcube demo in ht<res colors, S'E 

ArTilgaBB3lcf>tDgifdlr) 
Auismaia cellular autonata simuialion 

C^aiyEights card game 
Gi'Sfii iundon g-'aphng programs 

WtchincMcti' a garao 
ABiilCpro^rims; 

Casino games ol pckor, ^id^iatk, &»^ tnd Qipi 

Gomoku also known as oiheao 

Sabota^ sonoranad^ernLicegame 

EkbcuI >bt« pn>g ra m9 : 
Otsasser^ a 66000 dsassernbler. E'D 

DpSide sMow^ a given ssl ol IFF pictures, E-D 

Arrange aiartfomaftVigpnpgfan.E-O 

Assembler prog rams: 

Afooiwn irrsifial proarajti w-ft speech and >&Tiodem, S-E 

AffiicuSMsk* Rlestiomih«o()glntJAnnigi 

TtChniCll BBS 
Note thai une of tnese lie's ita old, and tt^ v t^^ wlktti 4l tti< 
operiiingiS]rsEem. Thesel:l<Kcan:>Blromtie$ufisy5]>emEh3!5^veda$ 
Aini!plsdT)lcilSij«olNafvrTu»tc'1IM&. 'niesefdesdomtcarrya 
ivar^rCy, an(lare!cretfjcationalpi,irposescc!y. Oico^rse<1}ursnatti 
siyth^<bnTiM>riL 

CompiatB ard rwajly up-to-date C sourcato'icp.aoe.ed'. an earty watMn 
ol (be Icon £(i», ThisisaLiBefaiq-.&:,itanpirfisardnjrs. 

An Intjition demo, in M C Jft/Cfi. ri^cfuSf-fi Stes: derr.cjr.enj.c, 
tfefncrrenuS.:. dBmoreq-c, getascii.:. ideno.c, ide.:Tto.gu[cia, 
■demo jrake. tdon^oailii. rc&iiz. and txwns c 
afldrtiem.c add nterni memory to tfTesyslwi 
bctsidSLo exans;;^ o( BOB u» 
rensoleC c console 10 etampie 
CJ^aponx Q-uisanddeletspans 
c^as!di-C CTBaiB standard LO !eq!.e$l5 
treata^e a^\ra task eia^iiles 
-^s^-c eiampTe ol track read and wnta 

^.c »j'cet3?ie"(i5trj'ivi.Tdo'«'dEmo 

Ctap'ay-C dual playfieideiampJe 
Rood.c fkxxffiilBxampJB 

Ereeff^ c old wrsbnol freemap" 
getiods.c tools tor VSpriies and BOBs 
flliraefii graphic mefno7 usage Incfcator 

neilo.c windQvr exSn^pSe Irom RKM 

inpuidw.c fliJtf:n9 an inpji hsnd»f tJ the inpui sJeam 
loystilcc readif^g nejC-i'StiCk 

Wybd.c araci kaybcard reading 

layertes c laj^ers tJiampies 

mousport-G lest mouse pen 
ownitbc, 

OwniibJ,srn e^aJTip'eo! matdng youroiwi library with Lattce 
paratesLC tesis parallel pon t^xnmands 
Bfifiiestc tests serial port commands 

serisamp-C example oJ sefial pwi use 
pfiftintr,c sampe printer interlace coda 

prtbasB.h p(ini0fdevicoi3&iini.iioni 
regintes c region lest pfogram 
sai3ace.c source lo imerlace on oflprogram 

sa:pa!3llel c &ei the actnbu^esof ihe paratld p:>n 
SeiSariaLc se!lhaanntiu!es(paniy. data btls)ol tie swialport 
Sir^ptaif.c sngie pla/field eiamjje 
Epeechtc^.c soutce !o na/raur and phor>e&:s d^o 
■timedety.c smple timer demo 
tifiierx BKfic support smef funcSofis 

Timrsiule mceenec support tfmer funcDcrj 

Whichf oni,c ioadsanddispiaysa'l avajlabfa system tonss 
pfOMss-i andpftbase iassmcbcf incWe lies; 
auicrtn^ t=rt wimiras cJ deadVKks wT\ autoret^josters 
conWesO.&t copy of the RKM console LO i^pier 
tfik^onilil fta-T.ng c( d-sit Ion: iaadi.19 bug 
fuHliflCM lislol»de^.Tes,miCfos, fusions 
ijip.it^.W pre'jmriafycopycfthe in^n device chapta 
Ucense intafraaton on WoffewKh distrixisan Icensa 
preiter prew'elease copy ol itie chapter on prjrer dtivers, from RKM 1.1 
vllfd-W "Sir oiJd He changes fron version i.Oio 1.1 v2av1M'diff 
ol include He tf^anoes fecra wrsion 23 to i.O 
AMICUS Dtit 5 FU«3(T0ni the Amiga Unli/ 
Amfga Inlormjiion NetworV 
Nrte Irtat 5on»o( ihese Pies are c^. and -eJcf lo oWftr versicns of sTa 
fixating EysSm. These [tiesi'olJOTAr^ijsi Link Ffl(rabniifi,Conroo- 
dore supported Amiga Lrt. aka KU, fej crtifie Awetoper lechfiicai 
support. JtwasortyupandnjTirtrgforseiiflriweeltt, TTwsefiesdonot 
a n7 a wararey , and are Si* editawna] puposes crty. Ot cotrSB, ffiars 
nDttosaylhejdomwrti, 

A drnio ot IntutUon menus called Vnenudemo', h C source 
i**ieres£ find a file searttir^ al SLOd-'ecsy^s 

toUsLC BOB programming en a-n fie 

$wMp^c 5ourdsyn&»sr5e«amp4e 

A»Hiibterni«s; 

myitev4sri sample tfevicedrirtr 
mytb^jjm samplfrtiUaryaianiple 
mybij 
mydevJ 
asmsi^J 

rracroji as$emble' indude files 

Teits: 
amigasncks l^sonCLIoomfTianes 



ext:^ extern^ disk speciTicafon 

Qameport g^-ns ptyt ^hc 

paraitei pi-a'i^ pon spec 

serial serial pen spec 

vl.lipdatfl iisi cl new Isaiures in version l .1 

v1.1h.t)1 "dill'otrnd'^&fJe changes from vision 1.0 to 1.1 

Files lor buEding ycu' awl prinier dni^s. irx^Dflng dospwialc, 

epsondatac, inii,asL-n, pinier.c, piinjer.lnjt, prirMrtag.asm, rc^Kterc, 

and wait.asm.T]^csd;£k docs con lainanu.'nb9rofM'9$d6!$ri^rQit^ IFF 

Sipedficaiion. These are notmelaiestandorealesttles, but reniainhefe 

IM historeal purposes. Th«yin:ludetejc!Ti:esandCsajrc&e*amp3es. 

The latest IFF sosc iseiseft'fierQ in this library. 

AMICUS Disk S IFF Pictures 

Ttssdisk rndwSss tfieDPSilde progfaii, which canviewa giren series 

ofFFpiCTures.ajTdihe'shcwpic'pfOQram.whichcariv'iffweachlifQallhe 

clkk d a/i icon. The picUrres Jnoude a screen 'ron AJiicFoj, a Degas 

dancer, Jie gv/s a: Etsttron^c Ans, a soriaa, horses. l^:ra Tui. a 

lighthouse, a Kreeitlroni Marb^e^adnass.theSug&Bunny Msrtan, a 

stii! from an old movie, tha Dire Siraiis iT.o\-jiaco?ii33fiy, a joeen Irom 

Pinbaii CoatfUEion Sei^ a TV rwwcas!«, ih<j PiiniCflfi. a wi^d map, a 

^sc^e, a shuttle misskm pa^di, a tyrannosauru s fejf. a pla^ view, a 

VISA card, and a ten-speed. 

AMICUS Dtslf 7 DtgiVtew HAM demo picture disk 

ThistiskJ^spictjrBs from the E&i View hotd-and-rriOdily video dig-Ill er. 

H incMes Itw la<fes wiJi peros and !o!ypops, the ycoig g^rf. ine 

h«aw,lhe horse and buggy, the 6>ie cover, the d:ctcnaj> page. ?« 

loW and Robert. Ttiis indudes a procrarrj a view eacn picture 

separately. anda-lBgener as separate. siidaWesFeens. The ■seetbrrv" 

prograrn. to turn any Kf sen ^ an FF pidi/e. 

C prog rami: 

Brtjwse view te*1 [lies on a (Wt. usinQ mffna S-E-D 

Crunch removes nmmentisncJMtM'ipaee ton ClUes.S-E 
\ostixec EXECUTEaseriesolcomnundslrDinWarkbanchS'E 
PC Screen E>jmpi:tj:Ttos Flastponot tvghKt screen to printer 
SecAJ^enale sets a second image for an ion. when dJctodcncaS>£ 
SetWnbow makeswincfowslofaCUcfcgrari 

loan under Workbench S-E 
5n^30iock 2SiT.a3d>^doc^awix)owTrenjbar 
Soi.Tipar ihe s?een printer in }« loirti AC S-E 

Amiga Basic Programs: 

{Note: Ma,-i/ofthesepi-Dsrar7sarepresentonAMfCUSDisit1. 
Several of these w?e con^-ened to AT-ija Basic. I L'c'uded hen.) 
AddressBooit a s^T-pte address book daiatase 
Bal drawsabal 

CScBd prs^ram a ccf.veri CompuServe hejc Siei te bira;y. S-0 
CK* lheca.T*.ir;!Litondrrven 

CofefArt art trawipg progr an 

O^eDraw ta o^wing program in ihe 3fd AC, S-D 
EEza cortversalionalcomputefpsydulQglst 

Ojhtilo ttegam4,asknowna$go' 

RatMazB WraSnaze^ame 
ROfl boggfinqgripticsdenio 

Sfanla &zw 3D pwlues oi the space shunle 

Speling simpeipelliingpfDgfam 

YoVo werd refo-gra^ty yoyo ben:o.t-3Cks 

yo-joiotha mouse 
ExKutableprog rams: 

3Dcuba MiiJi;la-2 dema 0! a rotaHng cybe 

Altlcon sets a seconc icon imaga, ;£$ptayea when [he iotn is clicked 
AmkjaSpeH a s!c-m but sir^ple spelt checks, E-D 
arc theARC file compressonprcg must hf tetetooi.E-D 

Bertrand graphics deiio 

disksaJvage pfog. to rescue cashed disks. E-0 
KwifeCopy a qlpcMBuJ nasiy d:sJ! copf pnarafTi; ijncres errors. E-D 
LibOir lists hunXs in an object li?e E-D 

Sa«!LEM savesany screenas IFF pic-E-13 ?' ScieenOufJip 
shareware screen durrp prog, Eortly 
StarTem version 2.0, temiprCGram.XmcdemE-D 

Tews; 

iJttceV^n tips on fiii.ig _maiac in Latice 
GDtsiJ>lve make yoLTDwn 5 tw drive 
GtJfuMed explainstheGiffunumbers 

La[3i>3hi:9s btg Est of LalScs C verswn 3.03 
MFo^Rev user's view ol the MiaoForge HD 
PrnESpooJer EXECUTE-iJased pint sotnl prog, 
.BHAPflles: 

These are the neceisary ftnks besw^n Amiga &as>c and Wie system 
liranes- To gSce aS^'sriage c( the Araiga's ca|H^'J•jes in Basic, you 
need nes& Ere$. EhMPs are ixlucied tor "cfiSf, "ccflsote", "daklonr, 
'eiec', V:w, "i/iti/Jon', laj'ss'. 'maihi^'. ."natJieeedoubas'. ^anieees- 
inobas', 'matfLi'ar.s'. poioo', limer' a/xS l/ansJalor'. 

Amiga Basic Programs: 

FtgfiiSn simpJe liigh! simutator prograrn 

tiueFalet^ eipla.is h^, Satiraton. & Untsraty 

Requesw &. oE reojesters from Amiga Elassc 

ScroTiDefTo demcnstraes scftf Eng capabiWies 

Svrthesizer sound pfogram 

WofidMap draws a map ol ]he wtrid 

Executibleprogntns: 

Bcino! latest Bodig! dcfn>o,witfi s^:eaab(es^eed,E 

BrushfC ccnvcnsanlFFbnjshtoCclata 

in5Lii;:tions, initialzabon code, E 
Bnfih2toi eaivBtslFFbmshlDaiiccaE 
Dazzle graphics {lano, trad^ to mAisie. E 

DeoGEL asseoESer program forsiopiping &3Cl&©T3rs, S-E-D 
Klocic merw-bar doA and dale dispar. E 

He thesEraeciUa.E 
TimeSet lntuitiDn-basedwaytOEetthetime& date 

EMEmacs anotfie; Emacs. nofE coentsd 10 

word processffig, S-E-D 

MyCLI aCLIshe0.wQfWwnJxwItliaWQrkbent^S-E•O 
Texts: 

FfwnKays read f jrKfem keys Ifom Amiga Basic 

HackerSlji explains how 10 win the gama fackar' 

tstemio aideto insali^ a 68010 in ya/ Amija 

Being! IatestBoif^!demo,imtisetBctaJ;:tespe«I,E 

BfUsn£C converts an IFF Ixvsh to C data 



instructions. aiiaEa^CfiCfras. E 
Brjsh2toon convens IFF sfus-Tw an i:on. € 
Oaizle Qfaphics Oerro, trada to mouse. E 

OedGEL assembler program tor stopping 53010errofs,S-£-D 
Klock menu-bar tiock and date display, E 

liie [he aame oi 1 re, E 

TmeSei kitmtion-basedway lo set the sme date, 

EHEfrec! awhw Emacs. more orie:^:«f to 

wo«Jpf«flSSif^g.SED 
WyCU i CLI Shell, weris wiiiou! ir« Workbench. S-E-D 
Texts: 
FnanXays explains how jo rgiad lunic'Jon keys 

from Amiga Basic 
HackarSIn atpEains tow io win ihe garr.e haiker' 
15*8010 guide to i^saiiJig a S3010 in yoir Ami^ 

Prrtarnp sefitftig aicaoa sacuoices to your pnnle" 

SlartupTrp [Ids on setsng up your startu-p-segyence file 
XlrmBeview llstol Transmief progra*:!! that work 
PriPterOflvefi: 

Pririei driven Icf the Canon PJ-1030A, the C lloh ProwriSw. aji 
irrpjoved Epson drivei' that efim^ses s^eakrig, the Epsor LO- 
SCO. Ihe Gemini S!ar-lO,trfl fIcC BO 2£A.theCk^laWL-92, the 
Panuonic KX-PlOu lamily, and the Sm^ih-Gaana D300, wnha 
document desert: Jig :^.e instala^ process, 
AMICUS Dlik TO Instnjrrieni sound demos 
Thisisancon^rivendemo.arcUstedtonanydealefS. Itincbdas 
t^a sounds olanacoLiSticguiia'.an a! an:i,abanjO,a bass guitar. 
a boink.a caHopOj a car horn, daves, wi^drip. eiedricguiar, a 
Ftle.aharp arp^.a kjckdnjrr, ama.'inba.aorpan minor chord, 
pftjpio la Wng. pgj. a pipe wgin, a Rhode* parw. a saxophone, 
a tiuf , a Sivuv divn . a r.ee! cnrn , be Fi , a vib'opi'xyia , a vo in , a 
ivajsm mur, a hsrse whuny. ahd a wTEStte. 

AHIcIlfiDlikll 

Cprogi^ns 

difuiil imiSon-based. CU rept^emBn minag« $^ 

cpri jhcr«an(JatitfS3pwi;ycICLl 

processes. S-E 
ps shows ilFoor CLI processss, S-E 

vidtex dsplaysCompLJserve RLE pi'os. 5-E 

Am i^ Basic pregrams 

porafBd porntet and sprte e>S)or pfowam 
Dpimize optimiia^icnci ample t!cni AC artae 

c^enjaf la/ga.aniJr.sKdc^endai.d'^and 

da:eMokpfog^.m 
amoncfl loan anwiie: xs 

btiShWiKiB ccnvws sfiai IFF trusres to AmioaBas'c 

BOB OBJECTS 
grids grawaftdpiaywaveloms 

ft^srt flra*sHt(jen curves 

mj4b nad II) story 3&^eratOf 

miSBlk lafeiftg ma-Jng Estp'ogran 

meai*)r«3D SDgraphia pro^^jn, trom A C" antfs 
mousetfach wause ^dkirg example in hires mode 
sl«t slot ma^ns game 

ticKWe Lhe game 

Switch paehinJ<.o-]ikagame 

weird fttaites strango sounds 

Eitsc triable prsQians 

a ii/v)t-li\euipycommandKE 

ds screen clear. S E 

dil Lnix-likQ stream edio: uses 'dilf oj^^ ^ifiSes 

pm diartJBCOrdeipertormafcesJndicatof 

Assembler programs 

cfs screen cfear and CLI argumenis etamde 

ModLf!a-2 

trals movir>j-wormig!aphcsdemo 

caseconveri converts Modula-2 ksywcrds 10 uppercase 
Forth BfeshehaJi cifsfe afgofjtnm example 

Amlyia 1 2 iwTiplates lor Ihe spreadsheet Ar^lyia 

Ttwre are four progra-ms heie thai read CoiT.mooi>re &4 pictite 
fJes. They can translaleKoata Pad. Doodle, Pfint Shop and 
Mews Rooim jfraphcs to iFf iomaL Getting the files from ycur 
C-W :o your Aniga is 1i"e hard pail. 

AMICtJjJOifthU 

EiecuiaWe pcograms 

biiiik 'a*ink' comparble linker, but faster, E-0 

de^ spins the ®sk fcr dsh deaners, E-0 

epserset sends Epson senings & PAR Ircm menu E-G 

showing vfewh-respicsintewressupefbiimap EO 

speakiime tell the time. EO 

ufiteieta untJeleles a fJe, E'D 

cmipldhm converts Apj:Je| tvi. m^6un and 

high res pictures to IFF, E'D 
menued menu edisc produces C code tof menus. E-D 

quck quc*i dish-io-dskrijoie rapier, ED 

quCkHA Kpies ElecLfOfiic Ans dafcs. remcves 

protecScn. E-C 
tied 1 J demo ol teM edttor from Wioosmiths.E-D 

Cp'ogoms 

spina tOBturgtMixksgraptTKSdemo.S-E-D 

popcfl Start a new CU aims press Ola 

bunoft,lkea*twk.S^E-Q 
vsprce VSprteejarfiftaoodelrom 

Commodore. S-E-0 
An)gaSaS Kjo^ ^t;, bulMiei board proa, S-D 
Assemtrierpfograms 

sla/'SO makes s3j- fields ike Star Trek rtro.S-E'D 

Pici/es 

Mount Wand^brft 3D view of h^ar^brot set 
Slac Destroyer hi-tesStaFWarsstarjhip 
Robe* rDtotaimgratftingacyirder 

TWs 

verdors Amiga vendors, names, addresses 

cank» lixesioea/tyCandlKmemaybGanls 

ctfidude cfOSS-re^ervniDCIncUlBfles 

mnAvalker dues to playing tnoame Ml 
sTK^eshcw make Kuc own slidsshovskoniihe 

KaJeidosrapedsd 



For PDS orders, please use form on page 96 
Visa and MasterCard is available on orders of $20.00 or more. 



Amazing Computing V5J 01990 



91 



Where can you find all the 

Fred Fish Collection, as well as the 

Amicus Disks and The AC Disks, 

cross referenced and fully listed? 

ACf^ GUDE^MIGA 

AC'S Guide lists the descriptions and 

contents of over 380 

Freely Distributable Software 

disks as well as 

over 2700 Amiga products. 



On Sale Now 
at your local Amazing Dealer 



J(in^ Base progoTis 

RousnK ffxi Caidyn SchsFprer si C8M T«ft Stppcrt. to read and 
(SspQiflfFFidUJWfronATigaEasc. WiJvdoftjnenawi. AiM 
inchjOed isa pmgrar:] !o &i sctkh p^um in AjT>i^ Bi&ic. and He 
nowestBVAPfiles,W!Thai:orrK:!ElCofiKflrtFDpregtani. Wflfie«- 
amppepctutes, and the Sav^ilBi/scraon upiure ptcoranr. 

Boubnes u load and day FuajreSowid ind FF samj Ei» from 
)VT!iipBa5c.&yJdTiFcusilGr.!V]ptedV[&oni. Witidoanwu- 
lun anj C and a sserib^ scxfTCQ lor Hilling yof QMfl ibrahej. 
tnleflacirigCtoassenibiefiinEijranes. Wii eiarnpta somf. 

EiKU&bieprograiTis 

giavity So Amer Jan S5 gravtelion flraphfc 

simUaiion, S-E-0 
TetB 
MfDl n^akayfiuTCnvTiMlplinslruner^iintDrface. 

ciKvJiiertsiJijrt * a d^s scHemaic. 



a] progfanj tfon Amaiif^ Cwnput^g iSiuM: 



Sever: 

Tcob 

0anK3/>'s CtlnjctLre index progran, S-E-0 

Amiga ftmcprogfaiiis: 

BMAPReadef bvTimJcnes 

IFFBrush290e byUteSwingsr 

AuEfiequ es ier eitaniFte 

OOSMelper VrindowedhetosysteflilcrCU canma.ids.S-E-D 

PETrans tran^tPHASClHnCASCDBes, S-E-0 

C Squared GiaphcsprcQnn] IrmSontfic 

ArnericaaS^SEi.S^-0 
erf atMaofiw»v«cam»5ef«tfnjlfcniSM.S-£-0 

dpdecode Wniypts Defcas PaifK, renw 
vwcow pf olection, E-D 

quiar)WB um Yes v No Iron tw user ntumsexctcade.S- 

ve VibC^^^^s$fBadsruet, no mouse ccntd,E- 

D 

iiin w*stcH3esKrSiwir]dcwand 

sMer ^£^E-1J 

OiD9, Strong. riBoni;, 2«ng are sorte-baied 
Song! Kyle demos, S-E-D 
CLlCfeck, sCtock. wC^cti a.'B *rtt» bonJcf dodu, S-E-D 
Tectt 

Aji arade on longpersisiance fftnpor mcnum. iip) on Enj>jng 
baishes ol «k] shapes in EJeluxe Paint, affljj-ocomfnendations on 
mi imertaces from CcmmocSDre- Amiga, 
AMICUS DisfciS 
Thfl C prog rants Irwiude: 

>* aBBprin:tinguflily,iM}iitficanpr.ntfilesnthe 

backgnUKJl aod Will bne nuntien arxl contTDJ 

tn* ifqAysacfartefthetAxkiaiiocaiKJonaclsic- 

'Ad^ questiora an 'eiscute'iilD. returns an 

errorcodtHcenEroiiheft^wutitfi iniha) batc^ [lie 
^nf an enhanced vef^ono(Affl9$aDOS 

'ti9ti4'ceninand. 
IlissoM' randoD-doldssolvQ demo (SfplpyS IFF pictm 

slovi^T.do: byiJd.iiiarandonilaihicrL 

hTd(£r£«'CLJMndaviaii*i6pr$s$Dl aSify. 
"nnntsuKlude: 

_Frogram*ifC!gghTJie 

pmer driver usaiQct prints^ 
'DisttCaT isialocs dste. ^.a^'ns, sortsj^verges 

"PSanf SufiaiaMusBTes" sampled sftxtiediitxirEcofOer 

tconmakr' flitieSifiOrtSfCrrrosJprOgraflS 

Tiacta^' tia>rsgr«utaa^Maseapet and mo/ita.'n scapes. 

gPflfBaiffjf^ ^0aSS«.CrsSBt)reak4uI'tarvw(]ini«i:3cn 

ItaiQaUcfiiQf' lisazj^ks&o'cpcn HCL 

nanaryuse, a»s.dRcesand[UfBinuse. 

'CoonoDds' vGTSianof'asSrtids'brtieAcnigL 

*Sizzl?s' riiQlitsoki^9^3C^tcsdEn;o<mQefJrUoaia2. 



"ansJrt" CEplainsescapasa)yerKaiheC0N:dewcerHpOTJst3. 
"FKo/ indudsjtenplatsiorEnaiJnc: paper to 

Ft inihe tray at tfie bp {if )}« Anlsa keytfianL 
'Spawn' pTOfraiiuna'sdoci^er^tixrnCcrnrttXDr? 

Afniga^Ascrto iva^ to u» iha /Riga's mUtitasiung i 
ycurowipfograrns 
AmtgaBaitc progfims: 

'Gods' draw&CLnIwa»«<(os.ar4lvartfKnplay>Bd. 

■UgW a version o< tte Tron Bgiii-cjcfa «Jflo ^an* 

"U^sSoT aganvaofsot^s. 

"SlatJ' prograrnbcaicUalebdEfigaveragers 

'Uwwy' Tt( 50 grab aJlihfl bags cfrttaiey thai you can.' 

AMICUS 1 5 aiso rcludes two beautiM IFF piclires, ol Iha onemy 
Movers frcm ihe ice planet in Star Ware, and a pictLre ol a cheetah. 

AMICUS Oiik 15 

Tug^H' demo &^ Ere Gfafiam. a rctol jugder twndro 

l<voa mrrarod balls, ipHtfi sounj fllactj. Twenty-lour frames of HAM 
arMnaton a'e lipped q jckly u produce fis image. Vou cv^ t^« 
spnd ol tfv iuggi'^ T>w autfur'& tlcoriartta^ hints that Vn 
prnran migTii sanedajr tw available as a producL 

pa^'sbes cJ the coven ^ Amiga Woild and Anahng Ccnpuing. 

Cpnorims: 

'irculiWider' exampiaolmalgnganir^handci. 

fiieZacS* boBFyQoAd&ig program 

'ShcwfVirf ctspla|ilFFpican;andpr^JL 

'Gtn' ptbanMeiSanlr^ieveCEtructLrMand 

vnMl dsdved in the Arriga indude He s>ssrn. 



'FiiHuric? npaininttKutaUeprDgrzmEiBloreipandvd 



Vi jJarruf ranv-ffts Wusc SwSo ffes to FF sandaifl 

■SMuS'lorrat I haw» j:arJ tfis program ffiigfl 
l^avQ' a iew {juQi. espedaly in regarcb b very 
)cng SOr^s. but it ViVi^ in rrosi cases. 

lAtti*' Amiga version of the "WssiteCommancT video game, 

Ttu Asit also ccn^H sncrai tie& of scenaros tor Am^ Figti 
SimJaMrll. Bfflueinccnec'resesestnaescnabiank.cbk.affid 
ifwringitin!hedri«iwpe*<tr^rigas?ecafcor:rriTdJirasgape. 
I numbar of injsrwing lecatcns ara preset i^to ha Fi^t S»rauiasor 
prwqin. Fvfttam^.onoicenarD places ycurptanB on Ata^az, 
WW skVw puts you in Cotrai Park 
* — IflUUI 



Teloommu 



aloommuntcaBons dsk whvch nnairts six terminal fxograms. 
'Coffln'V1J3 lerm prog, win Xmodem, WXmodem, 
'ATerrr'V7.2 lenn prog. incUas Super Karmii 
Yr-100*VZ£ Daw Weckar's VT-100 eniiJalcf wih 

Xrnodocn,KaTrrii, a.nd scnpfng 
'AmiaaKternir V4D(D60)pono(lhaUniz&tenn^ 
*VTai* V2J.1 TetarDfiii grajS^^ics lernuriJ CTLfiaEf 

based on W VT-iK) pccg. V13 and conuins 

lasesrarc'itecompresscn 
'AfrtigaHosf VO.S'iorCo'TipuEervB. IndiKlesflLE 

gaphics at>litics & C1S-B lile Irahster prolocd. 
TiiWur*" eKpansjonmomtwyneceMirf 

'FnOej" rerrejvBgafb^od^afadecslJTjm 

fnoton rececvfld f-les 
Tif fiJeiS lexl flies fron o^her EvKBrTi 

ts> be iMd by the A^iga EC. 
^djhien' e;i8euieableversiffik3ru£e)irTi3r.e!T 

eiparqion artide n AC v2_i 
^^ lieKxuiia«atonardats^tuur.a; 

cnm'a.x'TOfies 
*3:cre' fctnal^a^g arc'Sest-C. 

AWCUSDiaiH 
Logo A,-niga«fwnoltJiepopJar eorrpute^ 

language, witfi Bianp|B Drogrz.T5. £-0 
Tv^trt DBniai«s«onio*inewT'£rtcftarKtergeneta40f 



PaoeSvDor Freety d^ibuutie versicr^ C T^updatsfl 
PagePrji and PageiFFprspains torfc 
PageSeCer desktop publishing package. 
FiilWindow ResizesartyCUwintfcwujingcrlyCLJcomniands^E-D 
LleSd 3D versioii ol Conway's LIFE prcflran, ED 

DeMiEk CUuSlity torfl-assigna new 

WortierclnjijJi.SEO 
Calendai.WKS totus-coorpatttewvkiheetlhai makes catendars 
S«Key [)otJK>ci(keyt»artikByr6'programrTW,w(hlFFpicturB 

to fnake tuicbonkffy label], ED 
VPG VKJeopa-lEmgonEratorlorakvvigniQrvvrs.ED 

HP-10C Mew(enPa£kanl4tcicalaii3tor.E^ 

SefPrfffe Changs he htiavan $efing» on ihe Dy . a^ C. S-E- 

StarPnstw Program studies stelarewAjtiai.CsajtesincliiiSedfOf 
Am^and MS-DOS. SE-D 

ROT C «raw d* ColJr FfenclTs AngaBasc ROTflrografn 

faanAmazTQiCompuing. ROfe^ 
nl tfvbys cctnioni e nag tfrtt drrensJonaf 
iiCiactt. Up e 24 nries tf aitnattr on tse 
cr«aiK)and(feDtayixl. E-0 

Scat L*elfig.nmdowsoniCBenruia*ayh3nJiar!wu». 

E-0 

DK DeQrs't!vCLlHir<cw^odas:.in\todtia2 ^-^-li 

DrD^Bdaw2 Adc]3lay$^sh&d(w3toWo(kbencnwinda«s.g-0 

ThS iSi HJTwsevera/ pfogtams torn Amaang ConpuSnj. The IFF 
(xtures on 7is (Ssk induda Vie A/t^ W|k« can T- 
sr>n kigo, a scrtoBTKclDr hi4G$ ioiagefd Andy GKSti, 
and^ Amigi Uvtf pdtns bgnn Anchg SBriH 

Sotw IjfBff^qurttflttfvBrm isw rBbhi h naage.S'-S-D 

Gadgsa Bryan CaHey-sATi^Bajiswtorid.S-O 

HousehcM Bryan Citle/s Amg^Bj^c 

hcusflhoidinvonroryprografi.S-D 
WawHcnn Jim ShlBds'WavetOiin Worlist»Dp: AniigaBasic, S'D 

DiskLib jDtin Kerry's AmigaBasicdsK 

llranaTDf09ram,S.D 
Subscnrts tvanSraiffisAmigaBascsubseip', eiamF*e.S-D 
Sts-ng. Booles^ C programs and eiecui^iteskx 

Harriei Maybedc ToBys ntuton tuwaJs, S-E-D 
Sknny C Bob RienHpna't eiifiiFi'e lor 

naVing smal C programi, S-E-D 
COMALh MalwC bai( [.te COWAL header Fie, E-D 

EmacsKey Uakm EmaCs luncton key 

delinftiwisbyGteg Dcwgias.S-D 
AMon 1 .1 Snwp Cn System losourco um. E-D 

BTE SarcTs Tiie chaFader edittr, £-D 

Sue CU progfBT. shc7« the stic of a given Ml ol files. E-0 

VVi.nSje CLIw:najivu(tt;htciieicuTFii uttJow S^-D 

AWCVSPIrtZO 

tonsascr. Decoder Steve Uch$l AmJgaBasc tDoJs. S-D 
Eottd B03a.T(JEf«iteed&i»nt»ifTC.S-t-a 

SpraeAfasiera Sprse edtr itJ arwrjioc l^ Brad Kiefer, E-D 
BiiUb BlfiercHp^picrationCpnjgfan 

by Tomas Rqfcclo. S-E-0 
FPic Imagfl procei»ng program by Bcb Bush loads 

and saves IFF images, ettanges ffcrr will 

iwwal&dnqu«,E-0 
Bar*n ComgMBheritba«iigpog,bitn4yo.rc%:tixiok!E-D 

Tvgec OUat«aciirTiasaddtianditBagjr^iai. S-E-0 

Sand Stoi(iba(HdianJtatUlo«t«mou»pofcer,£-0 
PropOldbA (^rrMUavbedtTdyspraporticralpdgel 

eiarrpfe.S-E 
EHB Checks B see if you have onra-haJf-bnghr 

graphics. S-E-D 
Piano SiT.pie pano soirt program 

CciScnpo UahaceianifnBlionscnpislaAegEsArinataf.in 

AmigaBasic 

TTis (hk his M»inc catalogs Ici AM ICUS disks 1 10 2Q aru Fu$f. 
tftkslbflO, Tt& ~ ■- 

program, mdudedfn 



^sks 1 b 80, T^ are viewed wiA vr OtskCai 
ludednene. 



AMICtJS Dirt 22 

Cjctes LIghtcyciegarne, ED 

Sww_Printll Views and prinis 1FF piauros. indudirtg l^erihan 

SCTBen 
P:i[>vGen2J Idlest version Dlaprintar driver g^i^^er 
Animaicns Vi^eoSqptuiniaonict planes and bong ban 
Garden Ua^^stacMwdanKapet 

BastfSoru Eamptotfa wyM KfimdiftserSan 

son Li ATiig^Buic 

AHtCtKOftkZa 

AnAMCUSdTskcDrT^pieKlyfledieaiedlomuscOTtr^Miiga. Ths 

cSsif Mftars rtrt) music pta yen. songs, irttlru- 

menu, and players m Evng tl^ ^]| or pla^ "Big 

Sound' en yojr Ami^ 
ristnjmems acoOectcnoJZ^inmmeriesbcplayTig 

and p^c^aiuK. TlvoolieciienffivK 

Inn Cannon B Uarinbi 
UtiNSTn praganlaittAtiniMMnrtiDUCSMruita^ 

at Ml «» it( tn aripnt lor vy instmert. 
Ubc a ccflodondUCwcai pieces 

iBi20vertu« The 16 mirule classical leave corn;leuw4h Ca.'v- 

nonl 
Throe Amiga Misie Ptawrs: 

SMUSPjy 

l*j9GCra-125MUS 

UuSCSUdioSSMUS 
AliCUSDiakJ< 
Secsorama A dsk sector ecttcr Icr any ATiigaDCS S&spuc&jrRl 

cJevce. recover iJes torn a trasnedhajti iSsk. By 

E^virj Ainer tf McrtiiLMJis 
lceni« Reduffitteiieo'FFnages.carrpanion 

ysgrajt. Rccolcr. nirra;^ the pafeSe cc'ors o( one 

pactLreisu^thepaSeReccicrsolanoflier. Using 

These programi and a tool 10 onvorl IFF brushes ta 

WorVftench kans. make icons look Sta niniaiures ol 

thopiaues- 
CodeOemo Uoduta 3 crograro corrverts assemUar obreci i^s Id 

tr*re CODE s'.atemerrjs. Comes with a screen 

jcronr^eicaTipie 
Am>8ug Wcrtbeichh>ad( makes the same f^ywialJiacroSi the 

scTHin at landooi intervals. GtherM$$. coppleieS/ 

ham'Lloss. 
BNTools Tt]jGe etamBies ol assembiy language cede insm 

&ryter>lesbtB: 

1 . 5«Lace£roQ 10 iwflch Inleflace cn&otl. 

2. Why, replace AhiqbOOS CU Why 

3, LAii^prcn' to «□ a fte inlo rreracry until a 
reboot, :0m TCincflesoietfe hatters w* fi-nd 

LCBdtl^tJ.) 

Monotace CU program i^etsPfeterarcsstse-^raicbcrsol 

nwnotf / ome 4 irmrtaee sa^erg- Cssutcbe^ 

wihkf} (bpCntfw curn fVaiawicef seonu. 

BoingUacruv Araf-noH^artiiutionQtiperpeludmotaBoirigi- 
ma^ong mtcfiJM. 'mdudH n Itta v«rtiO(i 0( Bw 
Movie peogwn . utikti rai t» ibtty to play soincb 
aioig «i«i pw mimatori. By Ken Oner 

Dasr Ejoopta of using ^mlaHr and nanator devices 

ninikaihiAat^lilL kiswntHnnC. 

QLkiiBi Sc7V(-<3nwenanniationandddesiiH[nigraniSfa 

tfrough IFF ruges. 



EMcn Sys^im nori»'Anga3asic program ; 

Pfflcrm stnpfemanpulasonscrmenw'y. 

Moose Hjndom bac^fOLrxJpfografr.asiTvall 

wifidflw tfpens wth a moose rDsembteing 
BtillwinXIfiKiyinq witty phases user 
deriT'jb'e 

DGCS DeJme Grocery Constructon Sei. simpi& 

Infeiiiianbas&apfoglor^sHirablngand 
prirtng a grocery is; 

me Wfia Checfc tfrecBry holds sevorai progr arris r^ fine 
10 7q toitiware yvus Hut came TO !ho U S 
Iron ptraies m Einpe as detailed m 
Amaiuig CoiiipiAng V2.12. M KoesKK's 
lui explanalnn of tha vtms ax!^ is ir>d ud- 
ed. One pngrsjn checks for the soliware 
wrus on a Wcrl-lksiai lislt. The second 
prof^m dKCki lor the vrus in rnemcry. 
wtKh cDuU inlect otfierit^iks. 



AHCUSHifcaS 



GraphiaderDa pins troud) inoe 



, .Kda1[l*ino(t«SLn 
Mti aoniMrUAMta >nd ^Moa graphics. 

The nOcRay dractofv holds ledMMKitnsBwd 
pwhesHSwIOdaiaddsk. AvMiiga 
iQOOhaeliersatvMfiarnfDtaUe 
piliM!ga«shinhsiadidm^,10ci(Piav 
ofln fM charee to aykmtiqdy do a^ 
AOOICM far cid eipansiGn mernory , as 
«eB as the ,ti]«v u cfwiga the pctiA of 
the ~irqeilWor4wch' hand. Aprogrant 
is ifso inckjded tor mionng the aroc: 
eheeiiiun cK tfs Ktfotad (ksk. 

i<ffl«rd BASiCp(n)«ESiheyTRips«adtuflne 

Wo(UKiY:ft kaymapc emit your ow\. 

8Csic(i>V8 ModfiestheWarttbeneAnlveebipeimas 
BIB used, icons can hav9 Aighi colors. 
instead ol lour, E^ghtctJor icor.s are 
induded Pi;UicooinBirtp™r3.Ti':apiccn' 
or "brush Seen" oontens&gfi:: -color IrF 
brushes n imrs. to use Dekjie Paint lo 
mata tart for this new Woiteencti, 

Bnis^loon Converts bnJS^«s io icons [bijarr docs). 

Egraph Graphing prog reads [it.y| vabM fcorn a SIq 

and ispla/s ram en [he screen, similarm 
the lame-ramtd Ufiu pcogiani. 

Keep 1.1 Mesiago managing program for toieowi- 

mumcations. lets you save mesugss Irom 
an oniine franscj^ loanotfvr [ite, 
irdBTuandi 04 ^netsage (ortngi of Iho 
naiiDnal networia and several ryoestf 
bidesn board uBwarB. Uov^ tt^ouc'i tv 
transcript and s»e messages 

YAHak Speed 14) ifrQctcnraaeiS.it creates a 

smad Ho in sach dtKtry on a (S sk wtxh 
ccntjJns ffw in'of-mason about the SiB, 
wl also remove al the '!asar" fles Item 
each (trccKfy. t^y CL^ale'i au^wrs 

The LaceWB program dianges Be^«Jc^l imeriaco wd rw- 
mtertace wwlfberch. Prenoujly. fOu 
were lor»d breboot atur changif^ 
PmlarencestoaniracflaoedscrKn. Be 
program Kps beMeen ru nonnaJ and 
wended scretnheigns. 

PW_Utity AsharewveiAytyProWritousers, 
^nges nafgin setings and (oni types. 

Gutu A CLiprco!^in.printin£proCHfala causes 

for Guru medations: C source included. 

DsJcWpe Uiesi from Sfrtware DisMery, renows 

!^ Irom d^eooriet u Hk t^vn. mxi\ 
tailor ihan'decie.' 

Snow AmigaBasK: ^-akessrvwlake designs. 

Mifl Maingiistdaubue. 

SottaltoB Mainalnioftbri wuijiej.' toan recorcj. 

Dodge ShottModtia-Zprcs^ainmovus^ 

Woc1ii»nch screen aro^ ar%f a period ol 
lime, prevents monitor bum- in, 

AWCUSDIsVJfi 

Todor Fay's SoundScape modufi cods Irom his Amazng 
CerupcHiru a;tidlds. Tha soltcs lo Ed^. 
Ch»fl.T;Car»dVl/iaWudod. The 
Lattce and Uau C source eode is here, 
aior^ wrdi the AtecuBbfa rroMes. 

C^2l Update ol prog to cprrwl IFF meges ID 

PoctScriptHes lor prMng on law prir4n 

SIB^kup Hard 6» backjp prog mt\ Lervpei-Ziv 
cxmp-esston ha reduce tya necessary 

TC3 Pnnis iniormaton about lasfes and 

&ro:eses in the system: Essembler 
lOurcftis induded 

FjRfiu U(iafciWia(Hg yafl* earapdS€riesD{ 

ibI luiii tniDn MMi. 

X AhmlyniQnnlorpBQctei^utaan 

An^ ^020> 1 M inn itw as an 
AmigiDOS lo^. A WorUnncli program 
^ sends a OsloClwga smnl to B« 
ooeraiing system: Instead </trF*ng 
"iskiha/ige dfl:" (wei and over agam. jusi 
d>c*. on the icca C source indyded 

System cor^ fjie makes screen BD cziurns wiOe ol ten 
int^eScrisbiai won] prooessor, 

Dtd(2Rani 2projamsaanw»»eScittitf aprii iic 
ddianarr to an4 l«B tw RAM «£ 

Lenal AnatyasacuBeandgtvesmGiATn^ 

Fog, Fesc^, a^ KJncald ndees wfti^h 
measire readatsity. 

HBr|>jiip Modula-2 program to dupiaymemcry 

locations in heitadccimal, 

Tartan AmigaBasii::dasianTartanplaids, 

DiMaster DisS^calaiogpTjgram. 

flVi* plajs BSVX saiTip^ed sounds in ff« 

oac^nxmd vAiie scne^vg eEse is 
happeni.Tg in ne A-ii iga, « yftj Aftiiga B 
bocting,nreia.7ipia 

SfMwft CLf program chanrjK your pftTWIO a 

Svwpoini^r 
IS a coiiKtimo! mouse ponjers, & 
Worhberuh program to dis^^iay ihem 




92 



Amazing Computing V5. 7 © 1990 



For PDS orders, please use form on page 96 
Visa and MasterCard is available on orders of $20.00 or more. 



The Fred Fish Collection 



Due 1o the increasing size of the Fred Fisli 
Collection, only the latest disks are 
represented here. For a complete fet of all 
AC, AMICUS, and Fred Fish Disks, 
cataloged and cross-referenced tor your 
convenience, please consult the current 
AC'S Guide To The Commodore Amiga 
awaifable at your local Amazing Dealer. 



fmS Fish DMk 220 

A/ni^T refc A oirtf^uation o< Ktke' s Am iga Trc^ aohes , tttKti 
4r« parses ct pie Star Trgt s^es. "1111 yi Araiga 
Ravor. Eariers!oriesarBon(feli279^AuBior Mice 
Sntrfwcfc 

MkiOma^ AmjQapoioftvOme^^!ne. Omegiis 
simibr to hack or Dgue, but is mLfC^ more coiTDlei. 
Tbara ii a ciry, sevozl lowns, 2 frihJamess, IcU o{ 
dLfijecrtS. B m Jtrtude of nwryiiers. icTS d speils. 
magic rtams. en There an ssve^i quests Id 
QXTipieie. All in ai it !S an enrc^ni game. 
flfl^irBSlMbgrffiofBOfmerwry. Am^vftMn 
T.O.b/wy only. Author Laurence Bmfvs, Aniga 
poi1brAclKG4«rrtKvnkJ 

DuHtiBin M inbjitai based progf3min$s tool » ocnvei^ 

irtogn bstween C-edrr^. heiadecimal. and binary. 
VaryBmal.V6rsnn t.l, includes source in 
assembly cod&.AiThoc: Mictiael OjavidajT 

IconJ IconJ EioniScantl)i enhances the IconX progranv. and 
lis IOOV<canpa!ibi:e. Baliiws scripts to be exeoiled 
^(|auble-di:kJrtgi%S£nfit'5icar\. Abiitel ifCudfi 
joining ?H scnpt wlh the icoi file itseJf. a calir^ it 
Irm anyareaofyortSsJi^EsecuangBtw 
AmigiDOS tf AReu soip^ ojputnsi V )/)y Be or 
dpvice. uiwiQ rteracftvo sopcs wd scripts tial 
miBii ccndwiais, a/Id ocosig reiaaw conscle 
mndows IrrtjdesauiiBryc^edAiaiJirfiicti 
anachas EST detaches a scnp! islrcm an icfift *le. 
Vers«n1J]. iichjclessaiceinJfcrti. Sy: R)c^ 
Franian 

Ifi AflHoraiedFutbcnSysiEnviCTieriiinicfi 

flfaphiaSjf *jf*a)^ Seraied ftficon syswns 3fid 
afenn the us^ to iTLiej^rt^-eiy create the attine 
linctiors Ti! (feTiTB Such sj^efT^s. A.T :f S can 
repreH!Ttcofr.p>eifKa;.'es»«ryaripacry Smpie 
If Sj CiT a«:nbe ar, ta^io runber d( tftlerere and 
jWfesJi-'^ traoal dspiars. tcMes a rvnber tf 
dspta>'S L~;at tie si^ixx and others ttave dscoAfad. 
V^ncnli. incLdessajcsinCAiJlhor: Glfn 
Fu^ner 

Ptviiots Sonieroulines porledblhe Amiga by Bob Leivian, 
Ihal compute itta looaUon d iha Janets (as \'\&vte<i 
Irom a ^pecilic pod on ihe earth) and the phasQ ol 
thQ moon, iof an aioiuary (Jaie and Ime. includes 
tOurCB. AuUun Kaffi B/ancR VlH. Jm Cobb, F. T. 
Utftiatiai,ftinf!i£^ ftsti Lainainen, Bob 
Ldvian 

Tudie A shared kbraryc^H^'tunc^Dns lor drawing in a 
RistPcn:. indLJdessaicreinassefnti/anjC. 
Aunor TtunasAbefs 

UriiDifS AprrjgramwiichfterceptscaSslactos.iibrarjflo 
add the UHix Etjfio .' sri'.: s^.iitiy autre and 
paienl (bedones, respeaneJy^ 10 be and pati^ 
ramei. I.E.,you^ir^nBnhih4Ciref< 
diMQiy u ' Joo" nd Bn in At pann [freclory as 
'.^ico'. or tfy M tntir H fai of tftttuPL inchjdes 
lonainiiMiAUy.Auiiar Uuray Bemetlanj 
UaACyHv 

fajr{ha/^)cf#loriBe(rq(De)andds;U}«n 

■ndBpondsri snr^witJcsRb, nondMinoiSB' (od 
impiemenied), on disfilay si!$ and elate oT f^. 
ilwars atertatils, can a:chivG Jiers.msi. ia 700' 
[l)k« bumi/ittuf^/). and no recursnt> prcKedi^es. 
Includes source nC. Version 1.1s 12-1590). 
Amfw:Ro(and Bless 
Frtdnahmikag 

Gwin Tliiiij*«!Siail.OrfGWW. GWIJJorGfaptKS 
Wjhdow is an riiegraied caOeoion of graphcs 
rcubTKs calabie Ircn C. Th^e routines rr.^ H 
tity K> Cfeaie soohisica^ed jraphcs programs h 
Ihe C EJTvvcrmienL Or>e-[jnocalls jvflyoua 
CLttom scn!«n{tGfi ^^s avadaUel.menj itoffii 
JW)ufti!as,iett.ti/ckrs,po«ygons.fltc. GWlNisa 
tvA-dinTeniional floating potnt graphics system Mith 
convetsnn between world and scf Kn coocE^tcs. 
GWIN ndutJes tuJi-in cl;3prg that ma/ bo lumed 
offfor speed. Use d oSor and XOR cfierations ara 
graaflyampii&ad. Uanyexa:mp(e5o' liaise of 
GWW «n Ineludati in an entrnp^ drecbry. 
ExafOpwRUM-Bttfaargrafifi pre^vn, 
geoQriChlciidpphg program, SPICE SGEgnptiia 
peal pfDceuor. and otfwt- EiW^vt 
docifwrawnis intruded- Auffcr. HtmanJC. 



Colcr Tools Thrm Knis mat mampUate t» cdvi of ycu sewn. 
ftnaryonfy.Atrthor DietefBnjns 

CZEd Accmplero mid package bt use wthaUCasio CZ 
lynffiesJZBrs Ccr^rsahJfedgedsounde^ior.a 
UPb bmijla',0' lor CZ- 10 1/1000/2303, a baj^ load? 

Sndl meftieryOrnplOrC^-l. Thi tsatorrrert^ 
commprcdlpaduge new released as shareware. 
Bna;yoniy. Author: OivetWa^na 

bnkScuTdTiTO orarriplas 0/ furxscnsihat ywta/J l(*wi|h]iCtf 
cwn rade to produM a stwrl riiuscai "beep' or a sotfid 
tTAiaiinilBrla&riaigadrure. hdudes souf ce. 
AJhor: DiMrBftfts 

Sfnw Artryv«iiiBptDgfaia&d!Si&yiFFiLBUF,ies. 
Faikni tMHaaa utpadiing scKi, smart analysis 0! 
m/ tf ■■^loblecrtiiOHr'dlvby motes, simple 
ildHtOtf prKSing. pOKfTi macfv^ and a dczsn 
Gtwopbont. DrtgrSK. VefSion2.0,t)>^oMy. 
Ajihor SatHskano V^na 

Ft*dHthDMl3?4A 

TMsFrod RshOisltlsoSeredasan atmd^ CtiKunbi Fred can 
ersaisa leptacomeni iak. One pni^ram lias been 
romovod tori this liiM due 10 tOfiyrighi piohfems. 

ANSlEfl DsmovwEicnolanAfJSIsc-Eeafiieedlor. laCcwS 
)^!0'$a$i!/crea£ andrrodih a screen of ANSI-sryte 
ierfgra t^ts en ihe A-niga The sandafO AN5 1 oab- 
s« [red. green, peJo*. ylJe.^■^^^^(a. cyan, "^ej and 
lad Eifles (plan, bcislace, underiinod. ilaic) are 
piovded, along wtn some simiAi edtng and drawvq 
Kficlcni, Ths ftjmo v^rsicn has th© w^ Ifijti/es 
disced. Thists veraonl.lO.an updatff to vcfSiDn 
I^DaDondiskZZl.Binafvoriy. Author GregEptey 

[>iKFrOT An jmali»niliab(einiuition program that Shows the 
anount of liea space avaSaWe on ail cnounsd ti^^ 
tjevic$}. boih runericaJJy and $raphicaBy. Version 1.0, 
t"5iew3re,tinary&nfy,Aythc<- [Xisrief Kinz 

DPfFT Anenha«ed«rs!ono(DPV:t'romiisJt290, DFIolis 
a ):nvie fis(:iaypro9fam toreipertnerftal da!a,wtl^ 
iho goals of u7Enr:.ng pigrq Viiifjf\ kacHSiiiri 
ffyfltiOQ cvrioaibie sca^ng and prHenUon. The 
erha-xoreru kx DPFFT indjOe addilJon of a fas 
Fftfi^ TrvslQRn (FFT). dspiay ct a CLcSUn:Z£d 
npttu* and phase Epectn/n. a pfewtrisrjrg 
oapabity, ahd a ViFeidi window kr specraf snvooi^rg. 
Thitiiv«rMnZLl.b<f«ry«iiy.Ai,-tfW A.A.Walma 

UalcfA A!naJcl>ariikyDnei,i«tehwlrhxrnyouo(anyrEw 
nil and wB givfl Ifie choice of wwng. ^aeifii. V 
prrttngajnessa^fl. VersicriQI. includes source. 
Ai^'cur: Siephane Larocha 

FrtdFlahPlihaa 

Balchman AErogranvnaiMowsiheusefioeiiaculaCU 
ptogrtrns and taicti Be$ siinpljr by cknng on a 
gaitel HcanbeiBedaslhecHflero'atufi*ey 
syjiKTi, irfiere the \se! ^jt^ zixis on jatigeisto 
launch apiSiicaJjons, Versiof^ 1 ,1 , mefgdes joww in 
ModJa-li. G/: MichalTcdoiavc 

DCloch A 'Dunrb ClocK' uiHt that dispays the dale and time in 
ilK) Woil^nch screen liila bar. Uses only about 2 
poconi crftho CPU lime and about lOKbc' memiyy. 
Alio has an aiann tiacA iealute and audUe beep lor 
pfogramsihaicailDisplaySeep. Thstsversisnl.^Z, 
aniflda* 10 i*s3n i .5 on dai, 296. iwth r-jny 
emancsmentsandatewbugfaes. Indudes sotice. 
Author Oeal Barthej 

OoR^nscn Tlhijpi'OO'^^im^tenierESHSyciau^o' 
scijfce oode revi sion neadan {nry linlv 10 tw log 
headers 10 be I oinj al the top oltm Anlga "C irduda 
Iha). VoriiorMil.irtihjdUHum.AiJhar Obi 

FAU AT* Access PJanager for the Am^ifiataiowj 

m Apie AAe^x programs ki access a bdered version 
otadreclorynacartsistertnlHniizadiunnBr. I 
bijlen ai re naTias. dales, lijesvdioofv lor qvcL 

Kces3- Version VI wjifiue& By: DanvnNn 

^s^Twt Dcbuggrg huctJonsbrprD^Hisirtidi dent have 
anyiricDotwramfannHnL Faiftint consists of nra 
m^ pans : 1 harbour pw«» open u recflrve and 
dstnbuio messages and n^q-jost;. and t sfl of C 
f urttcss Ifl be !ii!*ed in:o any program wishing b 
co«nmLinieatawi!hih9Fa.'Pnnimainpfocess. Ttiisis 
vei&cn 1.5, an updaieio veisia.i 1,3 ondiSk231, and 
e<MS4 shared Uraiyas wefi as^r^Eibrane^ lor both 
Ubce and Aziec C. Incfutes source. A:;inor GUI 
Barthel 

KeyMacro A kejt(»-d ma&a prcg:^. corfigurabie via a ten fiiB. 
Ihal a^so supports hotkey program execulw. You can 
map up to eight lirctions ID ea(}i >«y, incfudJig keys 
»^ as o/w keys, the return key. etc, VHsioniA 
■ncijdss Bourcs. Author Olal Bailhel 

U^ydes Some sort Dlborhyirjm type program, NodKS 
nJuAoii. Version ZC. binary zrtf. By: Mnhat 
Tojorovtc 

MemGuanI MemGuariisaMemWTCh-l^prD^^snwNch 

fui beenreviT^tten r asseab^f bngiape larmamun 
speed and efSoency. 1Jr.U(2 Mem Waich MemGuard 
d3» no( n,r as Task in 3 AxTi :T?f locc tt^ faJiff as a 
IO«*-ltv4l inerruot njutine wiich ts capatjie of trappng 
menorYlhruhina even tKb-ff exoc m^ kno« ci et 
andtvmiMilukMdtfvigaiortdden. Inlaathe 
io#oenonm iicheti<£d $a:fi lr^4, Vriualy no 
proaw*ig ifene rs «t3»d. ^e irtemjfA rorne does 
the checks about halt a raster scan Ine'sikine. This 
prcfiram was coninbuied by Rail Thamef, who spent 



ihreo w«el(s program mrg i Oobuggng i. In Itiii, 
program Ralf uses sons very ddicala incks 13 lei 
his iniermpt routine work with fntuHn alerts. 
Varsion 111, binary anty. Author: R^IThamer 

HecilfVjfilib Ths is a scared lbra;y packagie b smjAtf 
the AReir hosJ FBabertmjnagerr^ent procedu-e. 
Fleix-mMsage pars^rtg tsaiso mduded making rt 
possible 10 iorArd ARen Irom programs such as 
AmigaBASC (canyouimagAe AmigaBASIC 
controlling AmigaTflX?!. Indudes souf«. kOhor. 
OiafBMhef 

Fred Fish mak 326 

CBOump ThsisaCUuSf/taliosewhoarBwor^jngwifft 
t^J^ii^'si^txxidwics. IssQiepkrpOjein 
He 13 o djiv ttt cureol {xrtBrti d tie cipbaard 
kiMdiiorbrttt$r«3ionH4pip*craBa. UuU 
hx tasfeig silhtarbcrg 11^ pmgnfns tm do not 
suOpontiediptxaRt Sctiumutodey: 

DofAtod OnftorrescresofftOBaSlRenO&iea Bulking 
B%k Srtiem} mcdipilcs by l-arry PihiLpps. DapMod 
tsa cispiay fwduie that only undeniajids ARen 
meisajes. ItarnjAS.mJeiprogramaxiinji.iJTe 
display ol MH and the 3a:epta.ica of keyboard 
daia. VfirsionOll.iincludessajrcv.AuEhor: Lairy 

PTlflflS 

Hfy Tii% program convois an icon to an :fF pictufs 

(btuthiUa. qhandesto^sint^ean^aliernale 
imago I inimawd) icons, TNsiSw^on MOwtKh 
adds a cckur palene lo the provous version Irom 
diil(B5. Vesical. lO.brnajyoniy.Ajjthor: 
Stephen Verm et^n. 

WqniTfifmAvery s-Tial, very sirrpte, aJmosi braii-dead 

iBTminitproefram. Primanlyusofulasanexampte 
o( how to taih lo file ccnsde and social devices. 
VersionJ.l,,rckjdessource.Autha: Stephen 
VtnftmMn 

MsixonalFMs Programs ic playing wEhNeuroral Nets using 
HopfieU and Hamming algDrthnii. Bfiary.ay: 
Uwe5c^4eie^ 

PopScnen AsmalihacktopapahRUeni£r«enbt« 

^orlfmniheCLL ThtKmMttentoaliHthe 
aulhcr K use vvrjr wth olier piogramha: also 
use cust^sTt screens. Soutefnduded. Amhor: 
SlepfwiVermetten. 

Snap A tool la capping levt or graphics Iron ihe screen, 
usj^gmetioboarfldov^. Snaplnaoui 
character coordinates autonabaly. hand» 
(teerent torts, keifmaps, accenadctaradBTS, end 
fsare vn.4tiuMa»»FF27*. Wu*JSOyr«. 
By: Mftad Kartsson 

VSnap Tits is an enharvxti version 0! Snap] ,3. submitied 
by Sieve Vermetten, wt»tfi sdds fe aWty u save 
dipped papfKS as IFF FORM ILBWs to Ihe 
ciipt»a:r<i, w they can be imponed w other 

progFims [hal undersKmd IFF and B» (JipWard, 
Oubbed 1 VSnap, since [he oKciai \.a Snap is also 
Ihdudod on ihis disk, kncludos source. D/i Mikael 
Karlisorv enharxiemertis by Stave Vftmeulen 

FrKfRtfi Mali 327 

ARTM ARTM (Amiga RiSal True MontoO cis^ya and 
ttrin(s«)iwn adivity tuchu uikL wintais. 
■flraiiilevkieSb (BstsuceSt porti, fssnerts, 
b4i(njpti,irectocLnenof¥.ni(u«,utfgns, Mi 
wSivOHVt. ihduCto both a PAL ami in KTSC 
vnrsiorL Thisisversoni.O.anipditeloverSfon 
0,9ondsk277. BJiary only, Aulhor: Dotmai 
JincanandF.J.Mertenf 

MM An inpiemenlaiton of the garrie Mastermind. Inhs 

girne you mull try Lo guess a color ccmt>nabon 
when ]he amiga sets via a random geiaraxir. 
There an E cdors ivhidi can be set ir. any 
nmbinatcn kic:kjdessoirc& Author Dwtniar 
Jaroen 

U^BvfcUp AhrdttskbadLpuifcytBldoBsa&by 
He copy 19 S9ndvd AmigiOOS Boppy (bki. 
kdudei an hti/ton irterlace and He Dompressoi. 
ThisrdS wsiiOn 3,J. an ipdala 10 vcrs«n 3 Jk on 
Atk279. &inaryonly.Auffia: MarttRmlret 

Mth An Amiga lie lystom iw$& Wi hin^^i MSOOS 
lonnatteddiskeQes. YoucaiuMrdosonsuch 
itsks m amosl enadiy the same way as yoa use 
ftes on njbva AmigaOOS dsks. ThijiiaUly 
hiKtonaL.feaclvnte verson, that s^norts B, 9, cr 
1Q sedCM Etsks ol a> trades, and shciAJ a^ work 
on 40 lr«k dnves and ha-'d *sii win 1 2 or 16 bit 
FAT of ary drtension the FAT aflows. Intiudes 
scurce. Ajthor Olaf Saberi 

Sofltoni Cgnvens portraii scfl Swi tar HP Laser J«l 
Cfirnpaiible lase* prrters \o landscape lonral 
Irt^udes souce. Author. Thomas Lynch 

FredRehOitkMfl 

AnatykCalc A Ul feactjed system fcy numerical 

analyse and reportng ir^^Odes a spreadsheet, 
(rai^ programs, doarwrts and laotlies lor 
perfsminp many mnxiurty nwdad k/Kbons. 
Futms incUe K I aOQO »y 1 eOOO ol 
tpet^htat tdiriB HliM monnry, random access 
to otwinadi ipMMMt tomutas or nikjei 
easy an or owgi d pvW theeis . 14: u 400 
wndOH on acnen, atAty « drfve any Hi boffl 
exiemal iracrrB. buitin matra aigetra. random 
nurber generabcn, dale anfiemebc. aid much 



ti\tjtb. This is He(si:viV24.01a, an update 10 FF17£. 
Binary only. Author Glenn E\'erhan 

Hames SorremisceJlar^ovE programs frorrk Chrts IHarrHs. 
arWork VI .01 isa las!, smaJl, ample efliMnt 
OirU^, FStXrs Vt J) Is a ncppy accelcraKyr 
program. VMKVZTtsasmat vtnA'bBtectorjViler 
that knpws aboct 27 ^ifleren! wioes and can delect 
newcnes. Nclnta Vl ,0 SB^ pnsgrjmt Irorr 
producing *jn!o' files. Bnarwsonly.AuEhor: Chris 
Ha-Ties 

RoadRouTQ Atrippianr«rihattakosali3to(p^s<u^a 
list ol known roifles between dtes. and genwates 
me dsance ^ bf:>e repjred u reach fixe 
iJestnsioa AntcidaietsFF25U«iihanai^ided 
dUBbttt of cifai and raads lor Ntm lilenca. Teiii, 
OMa^K»u, Kansas. Nebrashi, Souh Oitota. 
Loulsiing, Artanw. hktsaurt Colonda and 
M^sssipp. added by Fitd Uayet and Gary D#zer. 
Indudes sourte. 9*: Jrtn Qjoaiiitti, Fred Mayes. 
GaryDetcer 

FtrtFltflPi^KBaa 

CPU Two pogoms, one in C and one in assemWer, 

whtdi check for CPU type. This vftson can deieci 
eB0CO,6BQig.&ED20.andeSS8l proCeSSOrS- 
Inciutes source. AiAor: Ethan Docks, based v 
WhatCPUby:tewHayn« 

OisfcSpeedA tfM spaed iMfng {Kogrim ipacinciiy designetf 
to give Iw mod aoan M nniti ol the bu« tfik 
p^ribnn-anoeorihBttekundariesL Aultintaiialy 
upda^ and rciOmains an ASCII dat^se of dJsk 
resuHstor tested disks. Thisisverion3.1.an 
update 10 FF283, with some sn/ce ODde c^am^s 
andstresslestsforCPUandDMA. indwles source 
inC. Auihc: Michael Sini 

E-npre A compJete rewrite, Icom the gwjynd up. ifi Draca, ol 
PelefLangsttf^sE-R&reoame, Empreua 
miAipiayH5ametfCjpioraiirort,ecDncmicStwaji, 
AK. which can last a couple of nvKhi Canbe 
pU]ied eifw on tFw local Iwyboord a> remcfiely 
threughajnodBC!. T^isventfii,33w.anupdau 
toFFtlB^ »nj incWwmany chwgea and 
enfuncenierb Binary. By. ChiiGray.Otnd 
Wright, F'elerLjngstan 

FreSysiOTS Displays AffijaDOS ask ijeviceswtih 

inJonralon abtwlthe head geom<?try. BiilV^Type. 
and the lower lenleiGC device. Inn^udc^soL^Te 
Author EtanOidii 

OnePiana RenovasihaNghsinjnberbiv'anttnjndie 
WortiSen0\acreen. ^kfmalhrusedtouMl 
Vihilitiendi s(7een tarn 2 bttplanes to 1 bitplunoL 
This aUows COM: siy^ d^rices to s&oi lext lasiei. 
bdjjes scurce. Aijihor EtianDKki 

Mastra Avery versatiepn^ramiodspiayFPlLfiMfites. 
Features reaibmsunpadung scroE, smart analysis 
cJ ,a[iy IFF file. ictaJ tantrai ovbi disfjijy rftodas, 
lim^ sljdeshow piocessing, pallGfnmatcti:ng. and 
adoienolheroptioTs. Onlp4K. This is version 
1 ,0. an upgrade !o Pie Show pogram tmdjkoa. 
and adds SKAM. double buflermg, Eaitcc 
dooynpression, cobrcydng, TeXdxs, sta^p Ues 
for easy osComizr?. dnd complctt VlaySffd^ 
supporl tvougti TodTypes and S:yle icorui. Bru/y 
only, By: Sebas&ano Vigru 

9^ete A iDoi which allows you t3 change anat^er 

programs custom sreencoicn, Thii a version 
M. an update lothe^iefsiflnondisk 55. U^ 
features ixiude ziviks Iv Wor)>3encn Hariupi. 
chedcs Jor HAM. Halt Bnic. or more than tne 
bhptanes, and more tkcIui etm. mcfudos sou ce 
in assemt^, AuDor Ran^Jajet).CsfFnjpe, 
Carolyn Sctieppner. ^ariiHaatt 

VttO) AvtlDOemiiaiorbrfvAD^vtichdsosippDrts 
various He bartdariBUloctftJtelMBiI, snodeni, 
)fmodeni< modem, ee, has an AwDt poTL can use 
cusbm fid6inal ptttcd tnodiiBi, ancf rnore. TTn 
IS version ZSi, an uodate to vtnkf\ 2.9 on disk 
Z7E. Irdubes Sft/K.Ajthor: Dave Wei^, Tory 
Sunnall, Frarft Anines. end Chuck Forjt»rg 

XprKermit AnAmtja shared titrafy which providesXerTrilftki 
transter capability toany XPRcompaible 
wnmiflications prtgram. Suppcfls vetsion tO ol 
the XPft pTOtocd spedfjcautti. Version 1.5, 
indudes sours. Autvr Ma.'toPapa. Stephen 
Waiton 

FrriFlihOilkSai 

Cftobots A game based on ccmpi^er progf,),'nming, Lnlike 
arcade type games wtich require human inpui 
controlino some objca, all strategy m CRobots is 
condensed inio a C language program piai you 
design and write, to un'joi a robot whose missuci 1$ 
u seek out. track, and destrpy otf«r lotnts^ r^nng 
&^wt programs. Al robots are equaly eqiippod, 
and If u totj may compete fi once.Version 2^, 
an updac to Ff3ii . 3ira7 or^, ntitf Bvaibbic 
btrn author. BinTont PixriJexter, Amiga varsionfiy 
David Wrign 

Csfi VBrscn4Jllafl(ic^E>kesheademedVonihtic 
Ovhyi's sheS. wpgn 2.07, This 4 «i Lpdata lo 
version 4 J30a on di&k 309 Charges ffidude many 
bug taai and coradon;. tndudei sotm. Ajthor^ 
UiS Oilon. Steve Drew, Carto Sorreo. Cesaie Dteri 



For PDS orders, please iiseform on page 96 
Visa and MasterCard is available on orders of $20.00 or more. 



Amazing Computing V5 .7 ©1990 



93 



tlQ£x AprDgrzimisDDrTvenlFf pkSuTBloaneicailaliie. n 
can handlie NTSGPAL insfiiace and ovescart. Vorscn 
1.0. tinary orif. hitot: Pietef ii-an Leinen 

LhA^ An iitfutenied and ^e version ciSBTClorBiQ Amiga 
Reqjres AflP ibfiTp. Version 0.99a. &naJ7 criy.AuEtw: 
Hafuyasu Vcshiiakj, Aniga versiai. by Stefan Boberg 

LVR Link Vrus Henovef. A progigm thai recursivel)! 

Searthgs dirftiDHes tef Snk i-iAJses in fl»«ulabia files. 
This is wson 1 ,20, ainary orfjf. By: Ptete van Leuven 

rjT£C-PAL UMzi Atiich al^CM Amigas mti ff\s new ECS I Mb 
Agflu3 10 eatilj-Switcfibetv^eefl PAL and NTSC d:pldy 
modes. Veraion 3,D, JicludessourceinassemBly. 
Aijihon NlOT Fjuncois 

PaldiLoadSeg TNs program pa!c^le5 The Icadseg .routirje lo 
automUcaLy detect ;iink<.inj:es Atien a pfogram .s 
loaiM- Dis^/^ an Aleri when a ^rusi&cle!ectec In a 
program bengloatteJ Idfeirecution. Vefson i.H. 
inciLries sou'ce. AuUbtl Pieier van Le-jven 

VftjsUlils TwQpfografflslodetKt viruses on dri^ and in rrwrnory. 
ViivshiriiBf WTiovB alt known vifusej in raeraiyy. 
VimsU^ remove at known viruses in AienioY and 
alter refDDving itie viiises ne (£sfis on be :he6isd^ 
vi9tut^ vJTus copying iSEfl » the (£sks. Versicn 3.SQ. 

Frwf Fish Dbk 332 

Ani^ Some cute antmaSd ponters. 1 have adcfted vw cl 
!hsm as my pemanen: tepi3«merii tor fte btfmg r«l 
antw. Binanr onty . Autttt; 8ab UcKain 

DevPsUi ApiDgnmMtirtt)dbtpilAloiOpeirf1Mndmi9€f>ect( 
lh9 NmVA0]H Btutfi. V lh» Kl9 milchBS a speciTc 
siring, frj heighi Trit be teread B j(5 prash. Th? wpj B 
EwJuco drip mencry usage tet progra-Tis a^at open 
wwly ^arge windcws and u**n selfSom use tsm. 
indudes soufca. Airrxr Jcrrit Tyberghei/i, Uico 
FraiWas, P. Marivoe! 

Hflte^ A We irfuiEv^i f^. scUvaBtf va ine HELP key. 
Original I'y r::ean[ io provicie a i^que me!hod of giving 
the user help^ {you doni hav« b pdl t^al hoip stuff inia 
yftjf ewri pr^ram), New also Mntainsa ester rfauastef 
and a ^rrall nctepal Vefsion i.OI. irdu^ sourra. 
Author; Michael Ba!i&r 

Kl .Editor An editor Iwihe Kawai Kl (m) syrt-esiier wiih \tn 

awi'A'ary programs lor ma^naging sound dumps. Tnis Ls 
versJwi 1 .M. sharBware.ireJiKfes EO'jrce.Authcir 
Mfihael Baser 

Krypior A snal, simple and cor^lonac^ Rle ercader.'decoder. 
Version 1 0. uxMes sou^. Au^cr Wichaef Baijet 

RflirBut ATOi'wf IftputEv^! hack, f ving you a legging rs;?-;! 
majsebunon.VeriJon i.,(J, irdubes source. AuJw: 
UchaiH Ba'JSf 

FmdRth mail 333 

WuiPlo! A padage fsf Ta^mg 2D pio!5 mrrverienHy. Tm 
Moowy wca L'B Of §n3J progmi, wtKh was tfiefi 
erJarised try Wan Baxter vtiift a nice user j^eriaa, 
Hjppon i«- ^ PLT: ^tewo, and ufspoil bt Se conver- 
wns. Rich CharRpejiHBnd^ IHer wWttie PIT: 
haKKer n^c^ e^Ua^s a ptooer by aoesptng tiP-GL 
com m v^, cnatiirq a nslar imaoe, ffwn dunp^ t b 
fljiy prtfersnoM M^pode^ graptics printer. Ttiiji* 
vertioii XLNb, an uftdaia H FF292, «nd ireluijBt many 
bog ^1 st)« chai^res. and enhanornens. Irdudes 
source, kfsiar. Aan Baxter, Tm Woohey. RkA 
Cafnpeam', Jim Uirer 

Fred nshPiak 334 

FBM An Am'-ga port of ?:e Fuzzy PixMap image manipdabon 
library. 'i>Li5 package a'fows man^ation and 
Conors on ot a ^a^ of colw and B5W [rrsage formaS. 
Supported lorrr;ais irdude Sufi rastHties. GiF. IFF, 
PCX. PBM tjfimaps, 1ace* Mes, and FBMfdfis. Also has 
inpuicontferters lor ra»v images. Ci^e DigiView R!es, and 
output convenws lo( PostScjip! a-Td Diablo 9raph«. 
Se$i^ (>^ I^nnat ccnv^rsion, seme cl the o ter 
ima^ manipiiatk)n operations suppon&d ind ude 
m^angJat adradkn, density and contast changes , 
rolaiion. quant^^oa haCftoTis fp>'sca!ir^. ed^ 
sharperifig, and Nstoeranns. Verson C.9. t*r^ only. 
Aultior Wcftael Mai/din: AT-jgapori by Kenn Barry 

PPMive A 'more' repiiaotrTiert prog^^m ihat reads ramal asdi 
text FJflS as MiJ as lies munched Mith PowerPaaer. 
The crutf^hed Hes^mresUt ^ consider di^ spaoe 
savrigs. VerBon l S. binary only. Airsor: ^i:K> FiaxoifS 

PPShM A'shoWfyo^smlornainallFFlLBMEtesorlLBJ/liies 
trundled wti PowerPatter. TTti deound^ is Otf« 
suto- m^caly as tie He a FBadL Verson t i}, bra7 
onty. klBxx: Hco Francois 

Vftails AneariitBaiJlf^nhchrntoriiynxognzssaiKie 
vaherrot Be lyps (executabtes, IFF. bn, zoo Sos. 
etc], b[£ pririts infersting iritoniiatiai aboR tH STucture 
or conecfia or ihe leco^nized. file types. Version 1.2a. 
binary oniy. Author J. Tybet^hein 

Ff«inshDitk335 

BoingEJemo Demo version ol a neat game <iM for reteasa in 
Marc^ 1990, It is M/ ItA^tional bj) the play im& is 
Lmited to Trffi minuies per pfay. Versicfi 0,30, tsnary 
cnfy, Author: Kev:n Kdm, AJlsmate Realities 

DTC A ulUity prqjvi^Sng a smple calendar ^ich can held and 
ShowappoinJnents. Itmay be useful in managing your 
lifflo. Fis &ieJ (goals were lo provlds day, week ard 
monih al a glance tor any date Wiween lyi-i^OOi ^ti 
1 2/3M9539. dfilauEbng lo iJs cunrenl dale. It is menu 
driv^ and fairly easy lo use. hcl-jdes source in Fcrtran. 
Author:M!ch Wyle. A-niga port by Glem Everfian 

SeeHear a pro^fTt lo do a specTocraim o! a sampled sand his. 
ITifs is a graph wjili jme on one ans. fraqusncy on tfie 
otfie ard ne so(.fnd irr^Ersity at each point decern iitrig 
t'le piisl color. Wih soute in C, nduclJng FR rouljne. 
This is v-erson l.i . A;,iher: DarteTT, JWwBon 

Frwl Ran Disk 3J6 

Ca' a tm-ctmenscrui tuE screen scroll radng game witri 

;eys« tour charf^ si^reo sa,-nd and ov«r$can tor 
ftOier NTSC cr?ALATigas. Thegoal stogudaywr 
car a-bund one &I Iff! s^KlsJ tracks. Each bach has its 
ireiwJua] tt^ score fsL Vere^ 2.0. binary only. 
Aufhff^ Anders Sjam 



FleWsndow AcaDpWelypLtfic domain SerecoeslErwhich 
may be used n any program , evsn car.m atia] eries- 1 
itses dynamic^ aOocaied raefflory h h6d the Re 
names so DV cnEy birtalion is tB amount d r^r^yy 
avalabte. Includes I Her opfon ID ini i; (S splay cf 
Neram^s w cnly cneswfr 1 specSc eoeftsion. Names 
are suunatica^ soced wNe D«y are be^ read and 
dspiayed. VVIO. ndudes source. %: Anders Bje^n 

.MiriSlasl AsJvjolfemupgame'is+KhAinsjusHnainamijIt- 
ajiing errvifpriisen!. Ai test you can er^oy a satis^img 
megaUastviliJIe you are wntinga boring essay. Shoot 
arryrhing llial moves, and il It doesnt move, shooi it 
anjr^iay. VI .00. binary only. By: Anders Bjerin 

Sys A game buili on tha addctvegane PONGO but viiifi 

sevaral added laatures. Vou hat^ been a£&$^ the 
i>ef?,a(xJ!fig task d (Jeanvig vinjses l[cm your SVSOPs 
hard dist To kill a vimj. you sinp'yJfjtftatSskatJt 
The!9 ana lifly different levels, and on each level, tha 
spoed iviiil i/wease and ine viruses w-ll be$.iraderand 
ilart tohijit you, V2.lO>n^onfy. By: Anders Bjerin 

Fred Ran mat 337 

CManuaJ A com pleteC manual lor cnATxgia'AhrchdBsiTibes 
ho* to &pen and worit wih soeer^. winttews. graphics, 
gadgets, ret^uesbrs. alerts, u^enia, IDC UP. spriies. sIcl 
The mvtal consub o( flK» t^ian 2Da {ages in 1 1 
i Jui p w n,lopif w ^in<M>BiBn70tuly giflo i iah te 
eianifln witi tarn odt. Vffw uvadod. t« 
f^arxiSil snlexvnplesnurty NtiptfiMSUriJardAmi^ 
r«(ip>e3,ThLslsven)on IJKlandJr^udessounxIcral 
eumpies. Auhor: Anders ^wn 

Cpp This isa copy dO^Decuscpp.portedtolhe Amiga. 

Ths cppismorepciMrldand compJetB l^£^eidKrd 
the bUH in cffl's in Man* er Laifce C, This is an i^sSaie 
1 ]}% versjon on di sk ES. .1 has had^ scm e ANSI teaVe s 
added- Indudes source. By; MarSn Wirxw. OSa( Sei'ber: 

SASTcxjIs Vuxxjs submissionslrom 'S^ck A;:iga Soft'. Incijdes 
scne virjs tools, some screen hacKj.Kmie small 
games, and mi sceHaneous utilities, inck^es source in 
asjemb^y and h/odula-ll. Author Jorg Sijn 

SID A very cmpwensivs drtctory inlly for the Atiiga thai 
stwiorts at least a couple o! doien diHerent comniands 
for opKaiing on files. Veision 1.06, l^nafy snty. Ayttwr: 
Timm IJartin 

Fred Fish 0iak339 

PCQ Altae^y ledistrbuBbie, sell comotrng, Pa$cai csinpner 
fe( [he Amija. TheorJy majsf leatjiecf Pastaithatis 
nc'i.-npfemeried is sets Th'sis versbn 1.1c. an update 
toverscnvOondiski^. ltismLj:henhancedand 
abou: lourtfrfisfasiGr. lreludei!heefflr;kler $Qun;£arLd 
eianrpia programs. Ai.':hor: PaTc^ Ojaid 

Fftdnihoiskajo 

UarJ-C AcOTp)eta!m)yf«d$|il)utlibl9QerMronment1ortha 
fir\ ^ based on itw Sozobon ijj C ceff^&, Cha.ie 
Gbas asM^bJar. the Sobwe SisttfarysffiVer, and 
por:crs from afier «UMS Sw-e has pu'-ed evsfyjing 
Bc«t"-er a-o aMed sorr's efthartsm wis in Fie pfooess, 
Vwrscn 1.1 panai source only. By: Sle\fl Hawtin. et a3. 

^pkit A tbrary of C runaors L-setuf hv soerr.Ec pJottrng on tv 
Amiga. Thai btvy in Un'ce C e«r.pa:itie. Conoa 
p*otirig. three diniensior.al plotirg. a^is redefjii'jcr. tog- 
tog ptx^frj and multtple subpages are a lew of Plp(cr5 
laaljm. The plots can be dspfayed on a moruor or seni 
w a gfairfws FSe tor S4*seqyent primiig. This is i-ersion 
f.6. and update to versicd I.CO on F222. TJits verson 
includes a sreatly improved irtuiton interfaa, 
preferences support lor hardmp^ several new (tevrce 
drivers, ard Ihe capability o! addr^gadditioraCdevse 
drivflis easily, includes source. Author: Tony Richardson 

Spflj^erSiris Demo wetsicn oJ SpeakerSirfl ^0, a kwdspeakef CAO 
ptogram, Simu'aies vented (Ttuete-Smal) aTd closed 
boa systems. Aso simulates IsL Sindn and 3rd order Ngli 
ard low pass [idlers. Binary only. By: Dissidents 

FradRshmskSii 

P2C P^ is a bol for ean^air^ Pascal pnogiams into C. It 
handses tfie toDpAing Pasci dta^ecis: HP Pascal. Ttatjo' 
UCSD Pasc*. DEC VAX Pascal, OrBgo.T S*tr«are 
Pascalt, Uaciniosh Programmers Wcrtshop Pascal. 
Sun Berkeley Pascal. Modijla-2 syniai is also supported, 
hiosl (oasonabte Pascal proTins are convened irto 
i-Jlj Ijwonal C *ti3vwi] compiea-idfUiwiBi no 
tLmefJTiDdfcalcns.Vt.ia ^TiJdes soxw. A:*ior: 
Da<« G:!espie. A-n^ port by G- H. (Fred) W35§r 

FrrinshDisum 

£ TNsEsaniconfldiur^^iichcancrsaieandmodi^iccrts 

up to 6«0i200 pixab in ii» (af» du^ rencJet} . t: can set 
stack Siie, position d Icon (riso bee-Hoaa:^}. def aiit 
toci. 10 loof types and cwud over opened window, ft 
can alia generate t»e C SQur^ :cde behnd iTie icon for 
program indusnn. Verscn i.C, binary only, source 
aualabJe trom auirur. Aushor: Peter Kiem 

SKjh A kshlike shell forthe Amiga, Some of its leatur&s 
include command subsMution, sfieBfundranswiih 
parameters, aliases. Eocal variables, ixal ^nctjor^, tocal 
aliases. powerfJ conicJ structures and lesiis. emacs 
style line editng and hislory functionE, LO redirection, 
pipes, large variety of buift-in comfnands. Unit s^e 
wWcarrfs, Unls style fiSoname converlions, Rename 
□ompletion, and ooeilsiena? wit^ scnpis f ran ottier 
sbelj, Vsfy well documeniiefl. Version 1 .4^ an update to 
«tsion 1 .3 on dsli 309. New lealures itciuJe a I'ny" 
Wfsion.a swykingi case Kins tnjct. support lor resrdent 
conjnands. smaSecanJ lasler eflerr^ tcmraands, a^fl 
mo^. Brary only- Author : Sieve Karen 

Softom Convfiftsporraisottlomsfor HP LaserJet rorajKt-ae 
laser printers 10 lafuJKipe tomi at This is an LDdate 10 
FP327. hcbdes source. AuJior Thxr^s Lynch 

FftdRihDiak343 

SnakePii As(ii0i«.y«i4JMrve(^(i>eiftH>hi^yajmusigeiD£ 
sna>fl (you) oR o< tie scTHn. There a.-e. however, some 
rough spets and fonut obsiactu flat may need m be 
oven:orre, EjC£^ exs^j^ of a gam.e nai is as 
syslem hendly as possbie(in:h solscs;. 3y: Mchae^ 



SoftSpan Soft Span BBS pn:^m.lntuftis-e.cQmniind-Ene based 
rtfiftj sysien w&i jr.esHge bases, uprdown bads. f.ie 
credt system, ertensrrt help systarr;, etc. This is 
siiarewa.'e vorsoi 1.0. bnary only, laiica C sourcs code 
s^iaHe ^om the author. Author MaA Vi^fsitti 

StodiSt^ Apcogram^ihefFsyoufoJtowiiierec^iabieol 
Bicl->ange Irvn one (or more) shafe^s). But of course you 
must teil the Amqa the rocznt table ol exchange every 
day. Require; AmigjSASIC- Binary sniy. Aj&xf: K£chaei 
Hanet 

Fred Fishmsk 344 

Keyboard FuncfionstotranslaleflAWKEYtrsUtionmessagesinto 
usable keycodes. T^nsfaiion into Moduta-^ of C source 
(by FabbanG. Duloe, till on disk ^1. Veraon 1.0. 
Includes SOUTM, AuSior:FablMn G. Dufoe III. Peter 
Graham Evans 

RKMCompanicn A hw disk seiol material o-eated by Commodore 
(Of use wrthihe 1 .3 rev^son of (he Am^a ROM Kftnel 
Roleienee Hanyal. u&iu>esand DeviMi. pubftshed by 
Addison-Wesiey. Almost 300 tfe,, intudng C soa'« 
code exa-nplcs ard executabies, have been pacl'£d into 
h«a haic ar^ves. one Icf each disk of ti« NO d^ sei. 
These eiarrpies ve no( pubic domain, but may be used 
and dsmbuied under the condbvis speoted in re 
oopyngfA AuSur Commodore Business fix;tines. Inc. 

FwdFia mile 345 

CRctnts A game ba»d on computer programmir^. Un£ke arcals 
type games lAitxh requra ftjrrwi input corftnUng sorr>e 
object, al strategy hn CRobocs a condanied into I C 
language p^gran v^al ]fQu design a;^ Hfit&. u cawoi a 
robot wncse m.iision is to seek ouL trac^ and destroy 
other rctjoa. eachnjrrtng diPerer: pograms. AI robots 
are equally GQipped. and up lo four ma> com f^'^ gi 
once. T^u! is *«rsJon £.3 w. an update to FF331 . Bhary 
onfy. source a/aiiab* trwi author, ALiJiar: Tcm 
PoifxJertar, An-.iga version by David Wnjhj 

Du PnntsnimbercfdiSCbloduiaedinsateiBdlilesor 

directories. ModiEed Irom wfginil union w disk Aa to 
maXe ouipj: more reactiUe, and hundte *C exit. Incfudes 
soutcfl. By: Joe Uueitflf, enhancements by Gary Ountan 

Gailmage An enharced version of 'gi' from (f sk 14. Tnow looks lor 
theGRABmarker. in iha brush fie, instead of assuming 
that i|i£ai a specific plate, seis upfw PianePpiA value in 
the Image s'jucrture, and deieies any unused brtplanes to 
save me.'Tiory and dsksnaca. txludes so-.:ris. Aifihor; 
f/i'i* Farren. BtihanceT.en^s by Ov^ Brand 

WeraFraj DispfaysnuTiberolmemorycbunkssnesioshow 

memory fragrHfiniaton. Churiks are dsp^yed as 2"H 
bytes tvl^ch is a to^h (;uide iM sUi use^'ul. This is an 
ennanced vws-in ui •FrS'jj' from disk 69. Includes 
lojrce. 8yr Mha Mey«r. enf'.a.'vemflru by Gary CXncin 

Rsas A program nal &s*ii fcre roses, trplen-ents a.T 

algaretm fiver in tne anic* 'A B«e s z Rose ,„" by 
Peter },*.. Waurer r. A-n erion W.a3Tisma&aJ if/xti/. Vol 
94. ho. 7, 1 K7, p £31. A sins rose is a goph of the poti' 
equator 'f * sJn(n"d)' 'or va.*ioirt va\»s of n and d, 
Auywr:Car(ienArtino 

Ltnshar This prosran ejd-aca Ties trom Uni s^a^ archives. B 
scores ovHS.mda.'progra'Tis^y bein^ snal and laH. 
ha.'xlLr^ eivaoion of jjjtidireticrvs. n»p^sing 4 wide 
variety of setf and 'car shar lomnats. andhand'^ large 
lies spread a:ross seveiaJ sha: files. TFra is vereicni J, 
an Lpdale to the version on disX 2S7. Indudes C source. 
Ai.ihof: Eddy Carrqll 

VtEd A Voice fToiel Editor for the Yamaha 4 iDpefafor series 
synfiiesiiers. Binary criy, socJwavaiiaKe (rom auSw. 
ALihor: Chuck a rand 

X2X Cross cortvcris between Hotorofa/inleVrektronixASCII- 
hen files. Thase Ties are tj^BCally used Icr down-line- 
loading into EPROMS. or fw transmissicn vrfvere tinary 
l-res cause chaos. Handles Si, S2, S3, INTEL (ix USBA 
records), Te'ttrcflix |incejttanded). Source ir-c;uded. 
A^hor; QiTf Duncan. 

Frsdnsh Disk 346 

Az Ani^litAeiexiedtorthatastast.^ simple to use, and very 

Am^'ized. This is verson 1 .50, an l^te to FF 226, 
<mt\ lois of new featyres, twg Tues, afvi other 
Lmprtwamonls. ftnaryorty. By: Jean-Wche? Fo-geas 

CassEi Cassetfi tape label printer, tncideSKwcemG FA Basic 
Author: Thof slen Lriw^ 

FVE Patch E> AlocVemO lo a^DW bady desgwd prograiis 
whicn re<juesi last mem wiihcut necessiy » be rufl on 
512]cmad^iines. tickjdes^uixinasseobter.Airthor 
HetgerLytAi 

GoVj^ VaTf snal (296 bjles) and effeav? repiacefTierB fortfw 
we![ known "LcadWB" a.nd "EndCLt" cofrjnaid par. T)vs. 
re'easetxes a severe bug bi khe Trsi version whcft used 
to^jruitruioi.'toiascriiL includes some in C, Author. 
O^verWasr^ 

PacketSupport A Ifik tbracy. tor use wGi Latto C. pnividing a 
lew fure^ors to handle DOS pachet pos'agie. Indudes 
souice. Author: CXivei Wagner 

Paichf{TSC OS it to alk^ the gtpwing rwn&sr ol PAL jSsp^ay 
programs ic be njn on NTSC machines. Win patch tie 
\aki\\an CpenScreen() lunciion to assure salens with 
PAL height lobe opened in inleriace mode, Inckries 
souice in assembler. Auihor: Oliver Wagier 

TettPami Second majOr release cl ihe Ansi etSTor, At majc* bugs 
have been ^;ted. arvl a bunch of r>ew oplons have been 
adiJod. c.g. possibkly ia reload ansi fJes (x CLI modiJ«, 
A color ■opion, opiimned keytnard layotii. new dawng 
nodes, JigM mouse bi/tlon support (li^w [>eluiePaT;l)and 
much more Bj.na.'y orty. shareware. By:C^ver Wagner 

Trtietea Wcrtungeiamj:Jetoshowtheti.'ne{ji3ndgrntirae() 

hmcicns ct the LarjcaC 5ii^)porti brary. indudes soijce 
in C. Autior O'rver Wajwr 

WSO PossWy the smafiesi uSLiy le set tfw wgrW>ench screen 
toanydeptii, IncludeisdJceinC. ByiOiverW^iner 

Frwi Fish Disk 147 

Cursor A3-pass B^iCComplerkx BASiCprogramsnnaenln 
An ^ 3 AS C . does noi yet Hj^por aH dI ^ 8AS IC 
cc^rriands but is aUe to comfde i^f. This is vg^ion 
1 OJndudes sorca. Ajinor: Vgen Forssr 



Drip Dripisa-narcadestirfflgar^ewiti i S ^Dora [le\tids). 
You n uit m EvB icrg The [ipes c f each floor and nsj 
them 10 advance 13 the nettle,^ Evefyjfioors 
ecmpleied wit enaile ysu b a bonus toirt n+iere 
" scanbewoaAneitadnpwila^be 
d tor every 1 0^000 potfiB. Bnary orty. Author: 
ArtSSJfes 

FrwlFishD^klifl 

CoiotBeq DescnbestheupdaleCthecotorJibraryarrfhasan 
example program, mt. source, inai deflwnstraies its 
use. Author Dissiienis Sodware 

(^sEdiior TMs is ademool ihe Qssidefits shareware te^it edilor. 
Version 1.1, binary on!/. Auiior: Dissi-Sents Scftwafe 

JJsSeffeiary This program can be used to fiie infofmalwr in 
a filecabnGt' type environment. It is -msW suited for 
jobs such as maintaining adisk caialc^. cr user group 
membership, etc. Induded is a data file of Uio library 
catalog. disks l to3t0, Version ■Warda", binary orty. 
Author Dissidents SolMare 

FifetO Contains upd^ed files lor vers.-on 1 .6 of the dissidents 
requester li&rary, There is a bug (mo the library as 
wen as a new hjncticn Sea FFZ57 lor tfie canptew 
doomenta^cn. andeumpies. By: [>s$)den3s 
Softvore 

HBWUb Cor^ains jpdasd FJes lort.'ie tSssdffits ?bni.lMry en 
FF237.W* newlib leata^Bsand a newliirary. Also 
included is a much impoved(bGt^orga rizetjj E$oc 
fie, and new C eiamp^es ^l show hew to use i-ie 

Ibiry tef arry kirxl or I'F eie. See Ff^7 for «h9f 
examples. Author. OissiderJs Software 

IrsaflLbs A program lo copy ftei to ihe LESS: &t^i bCtf ds3t. 
Can be used B s:Mt9 a f'Jtndy insialiaiion program 
{hi-ti tSsks espeaifyj for programs that f^eed SsX- 
based librares. includes source: By: Kssidents 
So!^»are 

SA'/P An IFF sampjadsouncfonTsai designed Icr 

pfofessiona: mujic uss. itcan b& used lor l6-t»i 
samples, mulijple waveforms, etc. indudes a SAMP 
readef,'wrier shared I'tiriity. InieriaM louiines, and 
programmirg exarrples. Also Lncbdes a program lo 
conven ESVX to SAWP. Au'i'orLOissden's Sofiware 

F.[adFlsh.E[a!aAa 

I^ED A muse ed-.o: much liVe SoundTrackef. A song 
con^ts o! up IQ =0 bJ&WS of rriusic. which can be 
played in any order. Editng features irKlude cutpasta/ 
copy tracks or blocks, chano'r>3 the vbraio. tempo, 
crsscando, and note idume. Other leaiures include 
sviitcMng i3( the to*-piss-fi1« on or oft on a par Bohg 
bai^s. and a cute Rule aniTjiied pomter of a ;uy dong 
lumpirq jacks" n time 10 the mu*<;i Verion 2.00, m 
update to version 1 .1 2 on FF25S. Now inciixJes full 
source. AuSxk: Teio Kimjien 

F;ftd Fish Disk 35Q 

txs A i£.-ge variety d icons for many uses, oi pracScaly 
ev«fy desirption. Most are animated. By: Bradey W. 
Schertk 

MemMorneSt A pft^ram that opens a narrow window and 
gfaprtiafv rfspfayj yft^ nttfioff usigs Ike a gauge. 
Based en WFrags. by Tor;ias Rokicid. Verson 2.1D. 
^udes sokflxe. Author: Howard Hui 

StisSwry TTiSshareviarB program loads In :ff images ard 

ffeatesc^a^8d pa-ems frcm Lhem for tse incounsd 
crcss-sLtch and othfif 'ornselneed"*worit. K req-i^es 
Cfle ffl egabyie of m emory lo njn , and works best »Kth 
a good high-resolution prirer lar printing the panens. 
TtieStitcherywaswritenwihThe [>/eeior an j the 
Projector is indixfed. Version 1 ,21 . Author: Bradley W. 
Schenck 

TrackWi's Two utilities that deal »viih disk tracks, TCepy copies 
oTifl or mme tracks Irom orw d'lsk to arxKher, and is 
useful forccpyvig part of a floppy disV inio RAD: 
duhng bootup, TFilecreates a dummy fiiewhicK 
"marKs' a specjf-ed range of tracks, preventing 
AmigaDOS from using them and aKcvs-ing then m be 
used lor raw ffackrfsk data. I/Kkjdes C soi/ce. Aynor^ 
EddyCanoll 

ToBeContn-jed...... 

laCgpclualon 
To th€ bes! of oiir krowiedge. tie maierials ifi fftis 
[ilya7a.*6treB]ydisirit)ualtiJe. This means ih&ywer& 
either publicly posied and pfaced in ihe public domain 
by their authofs. or they have festricJuns put'Jshec in 
IheT f.\ss to Wii'ch wre have adfiered. If you becoma 
aware o'. any violaton of the authors' washes, p'easf 
cc^ttaclusbymgiL 

IMPORTANT NOTICE! 
This list is compiled and pua-lshed as a service Id the 

Commodore Amiga community lor informational 
pjrposes only, its use is rssi/icl&d :o nor-coramerdal 
groups onfy! Any cjpHcatioi for commercial purposes 
isstricayforb'dden As a part of Amazing 
Completing'''", this lisl is inherenily copyf ighted. Any 
infringemeni on this proprietary copyright without 
expressed wiitien pe:mjssicn of Ihe puDlishers will 
inar the full force of legal ai^lions. 

Any non-commerciil Amiga user group wishing to du- 
plicate this list shoijtd conla:t: 

PiM Publisatisns. I.x. 

P.O.Box 869 

Fall River. MA 02722 

PiM Put3l;ca'.ionj Ire is extterrely interested in hetong 
any Amiga user groyps m non-wmmeic-a! support for 
the Aimiga_ 



94 



Amazing Computing V5. 7 ^1990 



ForPDS orders, please use form on page 96 
Visa and MasterCard is available on orders of $20.00 or more. 



(CES, continued from page 79) 

Talto 

Taito has four games scheduled for re- 
lease in August, altliough we have no details yet. 
Castle Master, Day of the Pharob, Kitvi 
Ifrflse.and Operation Thunderbolt (an ar- 
cade hit) are ail coming soon and will seM for 
S34.95 each. Inquiry #313 
Taito Software Inc. 
267 West Esplanade 
N. Vancouver, B.C. 
Canada VTM 1A5 
(604) 984-3344 

VirgUi Mastertronic 

Spirit of Excalibur King Arthur has 
died, and the kingdom is In chaos. You select 
from a group of Knights of t!ie Round Table 
iliose who can help you restore peace. The 
game lias more tlian 2.5 megabytes of graphics, 
which should make tills vi.sually enjoyable. Due 
in August. S49.99 Inquiry #314 

If you enjoyed tliose crazy little spots in 
llie 7-Up commercials, then SPOT- Tlie com- 
puter game is for you. Promised to be tlie most 
addictive .strategy game since Tetris, you can 
play alone or witli tliree friends tlirough nine 
levels and 512 pre-programmed playfields for 
hours. October. S39.99 Inquiry # 315 

Alice in Wonderland features some 
amazingly sharp graphics, pop-up menus, on- 
screen maps, help, and icons for every object. 
October, S49.99. Inquiry # 316 

Quasar- take by force an enemy planet 
at the far side of die galaxy. Complex strategy 
will be needed here as you conquer portions 
and establish bases of tlie lower worlds. Due in 
September. S49.99 Inquiry # 317 

Monopoly due in August or thereabouts. 
You can play against a friend or the computer. 
S39.99 Inquiry #318 
Virgin Mastertronic 
18001 CoTv-an St, Suites A & B 
Irvine, CA 92714 
(714)833-8710 
FAX(714) 833-8717 

•AC- 



(Accelerators, continued from page 12) 

If you choose tlie Hard Drive option, all 
that will be required is a simple ROM installa- 
tion, and mounting tlie 3.5-incli Quantum hard 
drive to the drive chassis. One thing to note is 
that the hard drive comes ready to install in one 
of the 3-5-inch drive bays. An optional adapter 
kit is available if you want to install the drive in 
the 5.25-incli bay. Formatting and software in- 
stallation is simple. GVP includes a disk and 
automated software to format tlie disk. In both 
cases, if you read the ratlier small, but sufficient 
manual, you should complete the installation 
flawlessly. The result is a very fast Amiga, witli 
a very fast hard dri\'e — nice! You wouldn't 
believe how fast a cold boot is! 

As for software compatibility, I have liad 
no problems so far, e.xcept for a few games. 
Even then, you can turn off the accelerator by a 
jumper on the accelenitor board, tlie drawback 
being that you have to open your Amiga to do 
that. Otherwise, the compatibility has been 
e.xceptionai. 

Overall the Impact boards are fantastic. 1 
have only two minor complaints about them. 



First, 1 wish the manual was a little more 
substimtiaL The second complaint is not really 
toward GVP, but toward the FCC. The GVP line 
of accelerators has currently met an official FCC 
class A rating, while all the otlier accelerators 
currently have an FCC B rating. The GVl' 
Accelerator line is pending official class B certi- 
fication from tlie FCC, but this certification often 
takes much longer than anticipated (probably 
due to bureaucracy). Although all GV1> prod- 
ucts do meet FCC regulations, it's nice to have 
that official class B rating, it's all just a matter of 
semimtlcs. 

But, overall die Impact boards have 
worked fantastically, and we have been using 
an A3001/8MB with the 80MB Quantum drive 
daily for tlie last three months. 

THEIMTRONICS 
HURRICANE BOARDS 

The firs: tiling about the Hurricane board: 
read ilie manual!. Tlie manual is simple but 
informative, and a quick read is sure to be 
followed by a trouble-free installation. The 
installation is relatively straightforward. Just 
plug it in and go. There are no EPROMs to plug 
in, and there is only one jumper on the board 
(the switch from the 68000 mode to 68030 
mode). However, this was the only accelerator 
which required some simple software Installa- 
tion 10 work properly. This is easily accom- 
plished with tlie included software on the instal- 
lation disk. 

The built-in SCSI autobooting hard disk 
interface is very nice, and provides fast disk 
acce.ss with your choice of SCSI hard disk. SCSI 
hard disks are fast, but SCSI compatibility prob- 
lems can make tliem difficult tt) integrate. To be 
safe you .should contact tlie manufacturer to 
verify compatibility before spending a chunk of 
change on a hard drive. Although hard disk per- 
formance was not taken into consideration in 
our lest, we have found that the Hurricane SCSI 
interface was one of the faster on tlie market 
boasting a 750KB/sec transfer rate and 315 seeks 
per .second. The optional SCSI II controller 
could only be faster. Also, the SCSI controller 
lias been designed to support other SCSI devices 
such as SCSI laser printers. (Users will be 
notified when Uiis option becomes available.) 
However, the only problem I had widi tlie 
Hurricane board stemmed from a minor SCSI 
interface conflict, Reading the manual and ex- 
perimenting a bit quickly resolved this problem. 

The Hurricane boards also have a zero- 
slot solution. The accelerator, SCSI interface, 
and tlie 2MB memory only take up tlie 
coprocessor slot (leaving all five Zorro slots 
open). The Hurricane boards also work with the 
Imtronics M2000 memory boards, bringing up to 
16MB memory to the board. 

Overall, the Imtronics Hurricane accel- 
erators are good workliorse accelerators tliat 
have been around for a while. The only thing I 
personally don't like about tlie Hurricane accel- 
erators is the physical design of the boards. To 
help bring die Hurricane boards up to an FCC B 
rating, the two boards that rruike up tlie Hurri- 
cane are situated so that the component sides 
face each other, without room for the best 
ventilation. Altliough the temperature doesn't 
even come to the top temperature specification 
of the chips on the boards, I believe a little 



thermodynamic engineering couldn't hurt. 
Aside from diis tiny, and personal, gripe, the 
Hurricane board is a very good workhorse 
accelerator. 



THE COMMODORE 
AMIGA A2630 BOARD 

If there was one word to describe the 
A2630 board it would be "elegant". There are 
no fancy options, no hard disk controllers, just 
a 25 MHz 68030/68882 and 2 MB-32 bit DIIAM. 
Tiiere isn't even any software diat comes with 
the board. The simple 28-page manual (which 
includes schematics of the A2630) tells you to 
plug the A263O into the coprocessor slot. That's 
it. It runs flawlessly. 

The compatibility is fantastic, and to 
change into llie 68000 mode, all you do is boot 
the Amiga while holding the two-mouse but- 
tons down. A requestor will pop-up where you 
can choose either the 68000 mode, 68030 
mode, or a future UNIX boot mode. !Mow tliat's 
elegant. The board is also FCC B compliant, 
which is evident by the shielding around the 
processors. Very nice. 

There's only one problem with this ac- 
celerator. If you want to expand it to 4MB, you 
are going to have to solder the chips down 
yourself, or take it 10 a dealer. (It uses the same 
ZIP type DKAM that the Amiga 3000 uses.) 
Barring this detour, this is a perfect accelerator 
for someone who doesn't want/need/can't 
afford a hot rod hard-disk/screaming accelera- 



THE BOTTOM LINE 

The bottom line is tliat if you want to 
buy an accelerator, you're not only going to 
buy a board tliat's going to make your com- 
puter faster, but you're going to extend your 
Amiga's performance — well into tlie worksta- 
tion category. It's not going to be cheap, as 
many boards with accessories cost into tlie 
S3500+ category, but it's much cheaper G^y 
tliousands of dollars) tlian buying a Silicon 
Graphics color workstation. (Besides, you 
can't play F/A-18 Interceptor on a Silicon 
Graphics workstation.) 

During die next lew months we will 
present complete reviews and reports on these 
marvelous wonders that push the Amiga to its 
limits. We will examine accelerators in con- 
junction with ray tracing, disk access, modifi- 
cations, options, etc. Until then, look out! 
Speed is addictive! 'AC* 

Products Mentioned: 

Great Volley Products CGVP} 

i/XS Clark Avenue 

King of Prussia. PA 19406 

C2 15) 337-8770 

FAX (255) 337-9922 

Inquiry #331 

Imtroncs, Inc. 

12301 S.W. 132 Court Street 

Miami, FL 33186 

(305) 255- 9302 

FAX (305) 255-6903 

Inquiry # 332 

Commodors Business Machines 

1200 Wilson Dnve 

West Chester, PA 19380 

{215)431-9100 

Inquiry # 333 



Amazing Completing V5. 7 ©1990 95 






Name 

Address 



City 

Charge my D Visa D MC #_ 
Expiration Date 



State 



_Zip_ 



.Signature 



m w ' 


■ 


rMasterCard 


] 


L A t 


1 



© 



yysA 



Please circle if this is a New Subscription or a Renewal 

PROPER ADDRESS REQUIRED. In ordar to Bxpediia and guaraniee your order, all large Public Domain Software orders. 3S well as most Back 
issue orders, are shipped by United Parcel Service. UPS raquiras that ali packages be addressed to a street address for correct delivery. 
PAYMEWTS BY CHECK. All payments made by check or money order n^ust be iri US funds drawn ori a US bank. 



All Chnrges are subject lo a S20.CM 
minimum (charges under S20,00 
will receive a S2.00 service cliarge). 



One Year 
Of 

Amazing 


Save over 49% D 

12 monthly is.sues of the Number One resource to the Commodore AmigaO 
Amazing Computing at a savings of over S23.00 off the newsstand price! D 


S24.00 U.S 

$44.00 Foreign Surface 

$34.00 Canada and .Mexico 


One Year 

OfAC 
SiiperSub! 


Save over 47% Q 

12 monthly issues of Amazing Computing PLUS AO GUIDEJ^MIGA [J 

3 Product Guides a year! A savings of S32.25 off the newsstand price. Q 


$36.00 U.S 

$64.00 Foreign Surface 

S54.00 Canada and Mexico 


Two Years 

Of 
Amazing 


Save over 59% D 

24 monthly issues of the Number One resource to the Commodore Amiga, 
Amazing Computing at a savings of over $56.80 off the newsstand price! 


S38.00 US 

(sorry no foreign orders 

available at this frequency) 


Two Years 

ofAC 
SnperSub! 


Save over 56% n 

24 monthly issues of Amazing Computing PUIS AC'* GUIDE^mai 

6 Product Guides a year! A savings of S77.50 off tlie newsstand price. 


$59.00 US 

(sorry no foreign orders 

available at this frequency) 



Please circle any additional choices below: 



(Domestic and Foreign air mail rates available on request) 



Back Issues: $5.00 each US, $6.00 each Canada and Mexico, $7.00 each Foreign Surface. 
V1.1 Vl.2 V1,3 V1.4 V1.5 V1.6 V1.7 VLB V1.9 V2.1 V2.2 V2.3 V2.4 V2.5 V2^ V2.7 V2.8 
V2.9 V2.10 V2.11 V2.12 V3.1 V3.2 V3.3 VS.-I V3.5 V3.6 V3.7 V3.8 V3.9 V3.10 V3.11 V3.12 V4.1 
V4.2 V4.3 V4.4 V4.5 V4.6 V4.7 V4.e V4.9 V4.10 V4.11 V4.12 V5,1 V5.2 V5,3 V5.4 V5.5 V5.6 
Back Issue Volumes: Volume 1 -$19.95" Volume 2-$29.95* Volume 3-$29.95* Volume 4-S29.95* 
"All volume orders mus; include posiage and handling charges; $4.00 each US, $7.50 each set Canada and Mexico, and 

$10.00 eacli set for foreign surface orders. Airmail rates available. 
Freely Distributable Software: 

Subscriber Special {yes, even the new ones!) 

1 to 9 disks $6.00 each 

10 to 49 disks SS.OOeach 

50 to 100 disk S4.00 each 

100 or more disks S3.00each 

$7.00 each for non subscribers (three disk minimum on all foreign orders) 

Amazing on Disk: AC#i . . Source 4 Usiings V3.BS V3 ,9 AC«. . .Source & Usiings V4,4 

AC»3. . .Source 4 Uslings V4.S 4 V4.B AC#4. 

AC«S. - .Source 4 Lislings V4,9 AC#6. 

AC#7. . .Source 4 Ustings V4.t2 » V5.1 AC*8. 

AC#9. .. Source 4 Ustings V5.4 4 V5.5 AC#1 ., 
InNOCKuIation Disk: IN#1 ...Virus protaolion 



.Source 4 Lislings V4.7 4 V4.8 
.SourcB & Listings V4.10 S V4.1 1 
.Source 4 Lislings VS. 2 & 5.3 
..Source 4 Lislings V5.6 4 5.7 



AMICUS 

Fred 

Fish 

Disks 



12 3 4 5 6 7 
20 21 22 23 24 2S 26 



10 11 12 13 M 15 16 17 IB 



1 


2 


3 


4 


5 


6 


7 


6 


9 


26 


27 


2fl 


29 


30 


31 


32 


33 


34 


51 


52 


53 


S4 


55 


56' 


NA 


58 


59 


76 


77 


78 


79 


NA 


ei 


82 


83 


64 


101 


102 


103 


104 


105 


loe 


107 


108 


IIS 


126 


127 


129 


129 


130 


131 


132 


133 


134 


151 


153 


153 


154 


155 


156 


157 


156 


159 


176 


177 


178 


179 


lao 


191 


182 


193 


164 


201 


202 


21B 


204 


205 


206 


207 


206 


209 


226 


227 


228 


229 


230 


231 


232 


233 


234 


251 


252 


253 


254 


255 


256 


257 


256 


259 


276 


277 


2Ti 


279 


290 


2S1 


282 


293 


264 


301 


302 


303 


304 


305 


3C6 


307 


306 


m 


326 


327 


328 


329 


330 


331 


332 


333 


334 














(NA Denotes 



10 11 12 13 14 15 16 17 IB 19 20 21 22 2J 24 25 

35 36 37 36 39 40 41 42 43 44 45 46 47 44 49 50 

60 61 62 63 H 65 66 67 68 ffl 70 71 72 73 74 75 

65 66 NA SS 69 90 91 92 33 94 95 96 97 96 99 100 

110 111 tl2 113 114 lis 116 117 118 119 120 121 12 123 124 125 

135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 

160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 

185 186 187 166 189 190 191 192 133 134 195 196 197 198 199 200 

210 211 212 213 214 215 216 217 218 219 22fl 221 222 223 224 225 

235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 

260 261 262 263 264 265 266 267 2GS 269 270 271 272 273 274 275 

285 286 287268289290 291292293294295296 297 296299300 

310 311 312 313 314 315 316 317 316 319 320 321 322 323 324 325 

335336 337 338339340 341 342343344345346 347 348 349 350 

disks removed from the collection) 



Subscription: $_ 
Back Issues: $_ 



PDS Disks; $_ 



Total; 



Complete Today, or Telephone 1-800-345-3360 



Please complete this form and 
mail with check, money order or 
credit card information to; 

PIM Publications, Inc. 

P.O. Box 869 

Fall River, MA 02722-0869 
Please allow 4 to 6 weeks for delivery 



<T 



PRESENTING 



WORLD OF 

AMIGA 

IN CHICAGO 

• starring * 

THE AMAZING AMIGA 

* Featuring * 

Amiga Hardware • Amiga Software 
Amiga Accessories • Seminars • Bargains 



Rosemont 0*Hare Expo Center, 
Rosemont, Illinois mmt^^ - 

October 5-7, 1990 fT^^^^^^ 

j^Friday. Saturday & Sunday lOam-Spm \ \ p\eBSe 

Pre-re^stratioii: '"^S^ \ \ ^ '^' 

$8 per day or $20 for 3 days \ \ ^f^y^^Ei^ - 

Deadline for pre- registration Sept. 18 \ \ ^p/^NV (' 

Registration at show: 1 '' „ncc^ 

$10 fori day /\ ADDRESS, 

$25 for 3 days \ » clTV , 

Registration includes exhibits and seminars. I i 

11.-^ f-\nD-ria 



--^SS^" \ 



Pre-re^stration: '"^S^ \ \ C 'C . 

$8 per day or $20 for 3 days I \ ^f^yt__^ -^^ 

Deadline for pre-registration Sept. 18 \\ q^paNV (« apP''C^'°'®' ' ^_____^ 

Registration at show: 1 '' „ncc^ ^ — — " ^^i^IrE -^^ -,„n^ 

$10 fori day r^ ^°''"^'^^^:^I— ^'^ "^^sUationOctS-TCS^O^ 

$25 for 3 days \ . clTV _— ^^ ^ -p^ree-day «9'sWa^ 

ReglstraUon includes exhibits and seminars. \ i nisualton 1$^^ j r navabte W . mv 14226 ■ 

\ ', Q one-day feg* ^onev Order pav „^ ^^,,erst,N^ 

WORLD OF FOR MORE '- rSSlt-dan 

^ ATVm^A INFORMATION \ \_. The «""»«' ^[^^li^B^^^ 

X\iViJ.%jrX± Call (416) 595-5906 \_^ acxs^SSC' 

IN CHICAGO Fax (416) 595-5093 ^^^^^^^ SE*»iia«f, _ 

Other upcoming events produced by The Hunter Group include COMMODORE AMIGA USERS FAIR in Valley Forge, PA, September 15 and 16, 1990, 
and WORLD OF COMMODORE AMIGA in Toronto, November 30 to December 2, 1990. 

Crrcle 111 on Reader Service card. 



WORLD OF FOR MORE 

Al^JTr^A INFORMATION 

S\i¥JJ.%jrX± Call (416) 595-5906 I 

IN CH IC AGO Fax (41 6) 595-5093 



Newsflashi 

'usually IMWONICS'" make accelerators, ^ 

today they make HISTORY!" 




imtronics'"' is making history bv 
introducing the worlds fastest PC 
clocked at 50 MHz. 



The HURRICANE 2800 

brings ultimate performance to your Anniga 2000. The 
68030 CPU is clocked at 28 MHz and now also at 50 
MHz, with the 68882 FPU up to 33 MHz. Now including 
a standard SCSI autobooting FFS hard drive controller 
which works under both the 68030 and the 68000. The 
board is asynchronous and gen-lock compatible. The 
hardware is switchable between 68030 and 68000 
operation. A performance increase of more than 
1200% compared to a stock Amiga is possible with 28 
MHz and even 2000% can be achieved with our 50 
MHz design. Memory is expandable with our 
MEMORY board and the complete system fits into only 
one slot! 

The M2000 memory board 

can be used with the HURRICANE 2800 and the 

HURRICANE 2000 accelerators. Ultrafast 32-bit RAM 
multiplies the performance of the HURRICANE 
boards. Due to our innovative design, the RAM speed 
on our board rivals those of 'burst' mode designed 
boards. 

The HURRICANE 500 

board turns your Amiga 500 into a 32-bit work station 
and is extremely easy to install in the 68000 socket- A 
performance of over 500% is possible with the 68020, 
additional performance increase can be reached with 
the 68881/68882 FPU of up to 33 MHz. The HURRI- 
CANE 500 is hardware switchable between ttie 68020 
and the 68000 operation. 




HURRICANE 500 



1 2301 South West 1 32 Court Phone: (305) 255 9302 
Miami, Florida 331 86 Fax; (305) 255 69 03 



CIrcIt 1S1 on Reader Service card.